GridItemFormatRule Class
A format rule used to apply conditional formatting to the Grid dashboard item.
Namespace: DevExpress.DashboardCommon
Assembly: DevExpress.Dashboard.v19.1.Core.dll
Declaration
Remarks
The Grid dashboard item allows you to apply conditional formatting to cells. The GridDashboardItem.FormatRules property provides access to a collection of the GridItemFormatRule objects that are used to define formatting settings.
To add a new format rule, create the GridItemFormatRule object and specify the following settings.
- Create a required condition (the FormatConditionBase descendant), specify its settings and assign the resulting object to the DashboardItemFormatRule.Condition property.
- Set a measure/dimension whose values are checked using the specified condition by specifying the CellsItemFormatRule.DataItem property. The CellsItemFormatRule.DataItemApplyTo property specifies the measure/dimension to whose values a formatting should be applied.
- Optionally, enable the CellsItemFormatRule.ApplyToRow flag to apply formatting to the entire grid row.
Finally, add the created format rule to the GridDashboardItem.FormatRules collection. You can use the DashboardItemFormatRule.Enabled property to specify whether the current format rule is enabled.
Example
The Value format condition (FormatConditionValue) allows you to compare dimension/measure values with predefined static values.
This example demonstrates how to apply conditional formatting to Grid cells whose values are greater than, less than or between the specified values.
Note
A complete sample project is available at https://github.com/DevExpress-Examples/how-to-apply-conditional-formatting-to-grid-cells-using-the-value-format-condition-t259897.
Imports DevExpress.DashboardCommon
Namespace Grid_ValueCondition
Partial Public Class Form1
Inherits DevExpress.XtraEditors.XtraForm
Public Sub New()
InitializeComponent()
Dim dashboard As New Dashboard()
dashboard.LoadFromXml("..\..\Data\Dashboard.xml")
dashboardViewer1.Dashboard = dashboard
Dim grid As GridDashboardItem =
CType(dashboard.Items("gridDashboardItem1"), GridDashboardItem)
Dim extendedPrice As GridMeasureColumn = CType(grid.Columns(1), GridMeasureColumn)
Dim lessThanRule As New GridItemFormatRule(extendedPrice)
Dim lessThanCondition As New FormatConditionValue()
lessThanCondition.Condition = DashboardFormatCondition.LessOrEqual
lessThanCondition.Value1 = 100000
lessThanCondition.StyleSettings =
New AppearanceSettings(FormatConditionAppearanceType.FontRed)
lessThanRule.Condition = lessThanCondition
Dim betweenRule As New GridItemFormatRule(extendedPrice)
Dim betweenCondition As New FormatConditionValue()
betweenCondition.Condition = DashboardFormatCondition.Between
betweenCondition.Value1 = 100000
betweenCondition.Value2 = 200000
betweenCondition.StyleSettings =
New AppearanceSettings(FormatConditionAppearanceType.FontYellow)
betweenRule.Condition = betweenCondition
Dim greaterThanRule As New GridItemFormatRule(extendedPrice)
Dim greaterThanCondition As New FormatConditionValue()
greaterThanCondition.Condition = DashboardFormatCondition.GreaterOrEqual
greaterThanCondition.Value1 = 200000
greaterThanCondition.StyleSettings =
New AppearanceSettings(FormatConditionAppearanceType.FontGreen)
greaterThanRule.Condition = greaterThanCondition
grid.FormatRules.AddRange(lessThanRule, betweenRule, greaterThanRule)
End Sub
End Class
End Namespace