Posted 18 January 2024, 4:44 am EST
Hi Rambabu,
You can achieve the desired behavior by handling C1DataGrid’s LoadedCellPresenter event as shown in the following code snippet:
datagrid.LoadedCellPresenter += (sender,e) =>
{
C1DataGrid dg = (C1DataGrid)sender;
Product prod = (Product)e.Cell.Row.DataItem;
Brush forecolor = null;
double price = prod.Price;
if(price > 500)
{
forecolor = e.Cell.Presenter.Foreground = Brushes.Green;
}
else
{
forecolor = e.Cell.Presenter.Foreground = Brushes.Red;
}
if (dg.SelectedItem == e.Cell.Row.DataItem)
{
datagrid.SelectedBackground = forecolor;
e.Cell.Presenter.Foreground = Brushes.Blue;
}
}
Kindly refer to the attached sample for implementation. See DatagridColorUpdate.zip
Please note that C1DataGrid is a legacy control and is out of support now. We recommend you migrate to C1FlexGrid in order to get latest support and features.
Documentation link to WPF FlexGrid: https://developer.mescius.com/componentone/docs/wpf/online-flexgrid/overview.html
Thanks & Regards,
Aastha