I'm forget to warn - customBackColor should be cleared, here is correct code:
public override void PaintCellValue(CellDrawInfo dci)
{
try
{
ExtFlyGridNsp.GridValue gv = (ExtFlyGridNsp.GridValue)GetValue
(dci.node);
if (gv != null && gv.ReadOnly)
{
dci.customBackColor = Color.Gray;
}
}
catch(System.Exception e )
{
}
base.PaintCellValue(dci);
dci.customBackColor = Color.Empty; //Clear custom color
}