Skip to main content

Formatting Values Using Custom Conditions

  • 3 minutes to read

A Custom Condition allows you to use a custom expression for a conditional formatting rule. Refer to the following topics for more information:

In the image below, the Birthday column cells are blue if their values are greater than 1/1/1980 and less than 1/1/1990.

Conditional Formatting - Custom Condition Example

This topic includes the following sections:

Adding Rules in Code

Create the FormatCondition class instance and specify the following settings to create a conditional format in code:

The following code sample defines a conditional format in markup:

<dxg:TableView.FormatConditions>
   <dxg:FormatCondition Expression="[Birthday] &gt; #1980-01-01# And [Birthday] &lt; #1990-01-01#" FieldName="Birthday" PredefinedFormatName="LightRedFillWithDarkRedText" />
</dxg:TableView.FormatConditions>

The following code sample defines the same conditional format in code-behind:

var birthdayFormatCondition = new FormatCondition() {
   Expression = "[Birthday] > #1980-01-01# And [Birthday] < #1990-01-01#",
   FieldName = "Birthday",
   PredefinedFormatName = "LightRedFillWithDarkRedText"
};
view.FormatConditions.Add(birthdayFormatCondition);

Adding Rules Using Conditional Formatting Menu

  1. Select the Highlight Cells Rules item in the Conditional Formatting Menu, and choose Custom Condition in the invoked sub menu.
  2. In the invoked dialog, click the ellipsis button to open the Custom Condition Editor and specify the required expression.
  3. Choose a format to define the applied rule’s visual appearance. The conditional formatting menu allows you to use only predefined formats stored within the TableView.PredefinedFormats (or TreeListView.PredefinedFormats) collection.
  4. Enable the Apply format to the entire row option to apply a conditional format to the entire row, if necessary.

Custom Condition - Conditional Formatting Menu

Adding Rules Using Conditional Formatting Rules Manager

  1. Click New Rule… in the Conditional Formatting Rules Manager.
  2. Select the Use a formula to determine which cells to format rule in the invoked New Formatting Rule dialog.
  3. Click the ellipsis button to open the Custom Condition Editor; the editor allows you to specify the required expression.
  4. To define the applied rule’s visual appearance, click the Format button and specify the required settings in the invoked Format Cells dialog. See the Format Cells Dialog Window section of the Conditional Formatting Rules Manager topic to learn more.

Custom Condition - Conditional Formatting Rules Manager

Set the TableView.ConditionalFormattingAllowCustomExpressions or TreeListView.ConditionalFormattingAllowCustomExpressions property to true to display the Expression Editor button. Users can click this button to open the pop-up Expression Editor dialog and specify the custom expression. See Conditional Formatting Rules Manager for details.

Set the CompatibilitySettings.AllowEditTextExpressionInFormatRule property to true to allow users to edit a format condition’s expression string in the Conditional Formatting Menu and the Conditional Formatting Rules Manager:

using DevExpress.Xpf.Core;

public partial class App : Application {
   static App() {
      CompatibilitySettings.AllowEditTextExpressionInFormatRule = true;
   }
}
See Also