C# – How to change background color of a cell in Devexpress Grid

cdevexpressgridxtragrid

I have a devexpress xtragrid with 40 columns.
I compare each cell value with other and if it is different then I want to change the cell background color.
I try with GridViewInfo but it only takes the columns that are visible on the screen.But I want to do for all the columns.(Not with RowCellStyle)
Do you have a solution for that?
Thank you!

Best Answer

You need to handle the CustomDrawCell of your GridView, here is a snip of code that change the color of the Name column, based on an other column valoe (age column)

private void gridView_CustomDrawCell(object sender, RowCellCustomDrawEventArgs e)
    {
        if (e.Column == colName)
        {
            var age = Convert.ToInt32(gridView.GetRowCellValue(e.RowHandle, colAge));
            if (age < 18)
                e.Appearance.BackColor = Color.FromArgb(0xFE, 0xDF, 0x98);
            else
                e.Appearance.BackColor = Color.FromArgb(0xD2, 0xFD, 0x91);
        }
    }

Good luck