How do I change the Backcolor of a single row in a GridDataBoundGrid?
In a GridDataBoundGrid, you cannot set row specific properties like BackColor using the Model.RowStyles member like this.gridDataBoundGrid.Model.RowStyles[8].BackColor=Color.Red. The reason is that in a GridDataBoundGrid, the only data storage is the bound datasource. There is no row specific storage allocated. So, in order to set row specific properties in a GridDataBoundGrid, you must catch the PrepareViewStyleInfo event (or Model.QueryCellInfo event). In your handler, you check e.RowIndex, and if it points to the row you want to color, you set e.Style to the value you want. (The e.ColIndex > 0 check in the code avoids coloring the header cell in the row.)
C#
private void gridDataBoundGrid1_PrepareViewStyleInfo(object sender, GridPrepareViewStyleInfoEventArgs e)
{
if(e.ColIndex > 0 && e.RowIndex == 8)
{
e.Style.BackColor = Color.Red;
}
}
VB
Private Sub gridDataBoundGrid1_PrepareViewStyleInfo(sender As Object, e As GridPrepareViewStyleInfoEventArgs)
If e.ColIndex > 0 And e.RowIndex = 8 Then
e.Style.BackColor = Color.Red
End If
End Sub
Sample:
http://websamples.syncfusion.com/samples/kb/grid.windows/GDBGSingleRow/main.htm