How to set different colors for the GroupCaption rows for different levels of grouping?
The level of grouping can be accessed through the QueryCellStyleInfo event and then different colors can be set for the GroupCaption rows for different levels of grouping. Please refer the below code snippet which illustrates this:
C#
protected void GridGroupingControl1_QueryCellStyleInfo(object sender, GridTableCellStyleInfoEventArgs e)
{
if (e.TableCellIdentity.TableCellType == GridTableCellType.GroupCaptionCell && e.TableCellIdentity.GroupedColumn != null)
{
GridCaptionRow captionRow = e.TableCellIdentity.DisplayElement as GridCaptionRow;
//Set color of GroupCaption Cell for Level 0
if (captionRow.ParentGroup.GroupLevel == 0)
{
e.Style.BackColor = Color.LightGoldenrodYellow;
}
//Set color of GroupCaption Cell for Level 1
if (captionRow.ParentGroup.GroupLevel == 1)
{
e.Style.BackColor = Color.Red;
}
}
}
VB
Protected Sub GridGroupingControl1_QueryCellStyleInfo(ByVal sender As Object, ByVal e As GridTableCellStyleInfoEventArgs)
If e.TableCellIdentity.TableCellType = GridTableCellType.GroupCaptionCell AndAlso Not e.TableCellIdentity.GroupedColumn Is Nothing Then
Dim captionRow As GridCaptionRow = CType(IIf(TypeOf e.TableCellIdentity.DisplayElement Is GridCaptionRow, e.TableCellIdentity.DisplayElement, Nothing), GridCaptionRow)
'Set color of GroupCaption Cell for Level 0
If captionRow.ParentGroup.GroupLevel = 0 Then
e.Style.BackColor = Color.LightGoldenrodYellow
End If
'Set color of GroupCaption Cell for Level 1
If captionRow.ParentGroup.GroupLevel = 1 Then
e.Style.BackColor = Color.Red
End If
End If
End Sub
Sample:
http://help.syncfusion.com/support/samples/kb/Grid.Web/6.1.0.34/GGCQcell/QcellStyle.zip