Class ConditionalFormattingRule
Represents a description of a conditional formatting rule.
Inheritance
Namespace: IronXL.Formatting
Assembly: IronXL.dll
Syntax
public class ConditionalFormattingRule : Object
Styling cells when they meet a condition runs through ConditionalFormattingRule. One rule pairs a test (a comparison against a value or a category) with the formatting applied when the test passes, so a developer expresses "color this cell red when it is below 8" as a single object. It is the rule a developer builds behind a search like "C# Excel conditional formatting rule".
A rule is produced by CreateConditionalFormattingRule on a worksheet's conditional formatting accessor, then attached to a cell range with AddConditionalFormatting. The factory call sets the rule's ComparisonOperation and Formula1; the returned object is then configured with the styles to apply and added to the sheet. The rule belongs to the formatting pass that runs when the workbook is saved or evaluated.
Two groups of members do the work. The condition group decides when the rule fires: ConditionType reports the category (cell-value comparison, formula, color scale, and similar), ComparisonOperation holds the operator from the IronXL.Formatting.Enums.ComparisonOperator set such as LessThan or Between, and Formula1 and Formula2 carry the compared values, with Formula2 used by range operators like Between. The styling group decides what the rule does: FontFormatting sets font and color, BorderFormatting sets borders, and PatternFormatting sets the background fill and pattern. Note that ComparisonOperation uses the formatting enum, which differs from the same-named operator in IronXL.DataValidations used for data validation rules; the two are separate types with separate members.
using IronXL;
using IronXL.Formatting;
WorkSheet sheet = WorkBook.Create().DefaultWorkSheet;
ConditionalFormattingRule rule =
sheet.ConditionalFormatting.CreateConditionalFormattingRule(ComparisonOperator.LessThan, "8");
rule.FontFormatting.IsBold = true;
sheet.ConditionalFormatting.AddConditionalFormatting("A1:A10", rule);The conditional formatting how-to walks through creating and styling a rule, the conditional formatting example applies one to a range, and the style cells example covers the fonts and borders a rule sets.
Properties
BorderFormatting
Gets the border formatting.
Declaration
public IBorderFormatting BorderFormatting { get; }
Property Value
| Type | Description |
|---|---|
| IBorderFormatting | The border formatting. |
ComparisonOperation
The comparison function used when the type of conditional formatting is Set to CellValueIs
Declaration
public ComparisonOperator ComparisonOperation { get; }
Property Value
| Type | Description |
|---|---|
| ComparisonOperator | The conditional format operator. |
ConditionType
Type of conditional formatting rule. MUST be either CellValueIs or NPOI.SS.Formula.Formula
Declaration
public ConditionType ConditionType { get; }
Property Value
| Type | Description |
|---|---|
| ConditionType | The type of condition. |
FontFormatting
Gets the font formatting.
Declaration
public IFontFormatting FontFormatting { get; }
Property Value
| Type | Description |
|---|---|
| IFontFormatting | The font formatting. |
Formula1
The formula used to Evaluate the first operand for the conditional formatting rule.
If the condition type is CellValueIs this field is the first operand of the comparison. If type is NPOI.SS.Formula.Formula, this formula is used to determine if the conditional formatting is applied.
If comparison type is NPOI.SS.Formula.Formula the formula MUST be a Boolean function
Declaration
public string Formula1 { get; }
Property Value
| Type | Description |
|---|---|
| System.String | The first formula of the rule |
Formula2
The formula used to Evaluate the second operand of the comparison when condition type is CellValueIs and operator is either Between or NotBetween
Declaration
public string Formula2 { get; }
Property Value
| Type | Description |
|---|---|
| System.String | The second formula of the rule. |
PatternFormatting
Gets the pattern formatting.
Declaration
public IPatternFormatting PatternFormatting { get; }
Property Value
| Type | Description |
|---|---|
| IPatternFormatting | The pattern formatting. |