FormattingRuleCollection Class
A collection of FormattingRule objects.
Namespace: DevExpress.XtraReports.UI
Assembly: DevExpress.XtraReports.v24.2.dll
NuGet Package: DevExpress.Reporting.Core
#Declaration
#Related API Members
The following members return FormattingRuleCollection objects:
#Remarks
The FormattingRuleCollection object can be accessed via the XRControl.FormattingRules property, which provides access to a collection of formatting rules applied to a certian control, band or a report itself. Use the properties and methods of the FormattingRuleCollection class to manipulate elements of this collection.
To learn more, refer to Conditionally Changing a Control’s Appearance.
Note
Formatting rules are only available in the legacy binding mode (when the User
#Example
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();
this.FormattingRuleSheet.Add(rule);
// 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.
this.Detail.FormattingRules.Add(rule);
}