Skip to main content

FormattingRule.Formatting Property

Provides access to a set of formatting properties applied when the FormattingRule.Condition is true.

Namespace: DevExpress.XtraReports.UI

Assembly: DevExpress.XtraReports.v23.1.dll

NuGet Package: DevExpress.Reporting.Core


public Formatting Formatting { get; }

Property Value

Type Description

A Formatting object, containing a set of formatting properties.


A FormattingRule object is comprised of a logical condition (represented by the FormattingRule.Condition property) that determines when this rule should be applied, and a set of formatting properties (represented by the Formatting property) which are applied to a report control or band when the Condition returns true.

The Formatting object that this property returns contains a set of appearance options (for instance, BackColor, ForeColor, Font) and the Formatting.Visible property that can be used to suppress report elements.


Note that if any of the Formatting object’s properties is not set, the corresponding property of a control isn’t changed when this formatting rule is applied.

For more information on using this property, please refer to the Conditionally Changing a Control’s Appearance document.


This example demonstrates how to conditionally change a control’s appearance at runtime. For this, it is necessary to create an instance of the FormattingRule class, specify its FormattingRule.Condition and FormattingRule.Formatting properties and add this object to a report’s sheet of formatting rules (XtraReport.FormattingRuleSheet) and to the collection of formatting rules of a control or a band, to which it should be applied (XRControl.FormattingRules). Note that the same task can be also solved at design time, as described in the Conditionally Changing a Control’s Appearance topic.

using System.Drawing;
using System.Drawing.Printing;
using DevExpress.XtraReports.UI;
// ...

private void XtraReport1_BeforePrint(object sender, CancelEventArgs e) {
    // Create a new rule and add it to a report.
    FormattingRule rule = new FormattingRule();

    // Specify the rule's properties.
    rule.DataSource = this.DataSource;
    rule.DataMember = this.DataMember;
    rule.Condition = "[UnitPrice] >= 30";
    rule.Formatting.BackColor = Color.WhiteSmoke;
    rule.Formatting.ForeColor = Color.IndianRed;
    rule.Formatting.Font = new Font("Arial", 10, FontStyle.Bold);

    // Apply this rule to the detail band.
See Also