FormatCondition Class
A value based conditional format.
Namespace: DevExpress.Xpf.Grid
Assembly: DevExpress.Xpf.Grid.v24.2.Core.dll
NuGet Package: DevExpress.Wpf.Grid.Core
Declaration
Remarks
This conditional format allows you to format cells comparing cell values with static values.
The image below shows a grid column whose Profit cells are red if their values are greater than 10M.
To create this conditional format in code, create the FormatCondition class instance and specify the following settings:
Specify the comparison logic in one of the following ways:
- Specify the FormatCondition.ValueRule, FormatCondition.Value1 (and FormatCondition.Value2 for Between rule) properties to define how cell values should be compared to boundary value(s).
- Specify the custom expression by setting the FormatConditionBase.Expression property.
- Use the FormatConditionBase.FieldName property to specify the column’s field name to which to apply the conditional format.
Specify the target cells’ formatting in one of the following ways:
- Specify the predefined format using the FormatConditionBase.PredefinedFormatName property.
- Set the custom format using the ExpressionConditionBase.Format property.
- Add the resulting FormatCondition instance to the TableView.FormatConditions (or TreeListView.FormatConditions) collection.
The following code sample illustrates how to define a conditional format in markup:
<dxg:TableView.FormatConditions>
<dxg:FormatCondition ValueRule="Greater" Value1="10000000" FieldName="Profit" PredefinedFormatName="LightRedFillWithDarkRedText" />
</dxg:TableView.FormatConditions>
The code sample below illustrates how to define the same conditional format in code-behind:
var profitFormatCondition = new FormatCondition() {
ValueRule = ConditionRule.Greater,
Value1 = 10000000,
FieldName = "Profit",
PredefinedFormatName = "LightRedFillWithDarkRedText"
};
view.FormatConditions.Add(profitFormatCondition);
Note
If you use ColumnBase.Binding properties to populate columns with data, their ColumnBase.FieldName property values have the following format: RowData.Row.{Your binding path}.
Refer to the following help topic for more information: How the GridControl Identifies Columns.
Related GitHub Examples
The following code snippets (auto-collected from DevExpress Examples) contain references to the FormatCondition class.
Note
The algorithm used to collect these code examples remains a work in progress. Accordingly, the links and snippets below may produce inaccurate results. If you encounter an issue with code examples below, please use the feedback form on this page to report the issue.