Click or drag to resize
ExcelFillPattern Class
Represents cell fill (background) formatting which can be either pattern or gradient.
Inheritance Hierarchy
SystemObject
  GemBox.SpreadsheetExcelFillPattern

Namespace:  GemBox.Spreadsheet
Assembly:  GemBox.Spreadsheet (in GemBox.Spreadsheet.dll) Version: 41.3.30.1018
Syntax
public sealed class ExcelFillPattern

The ExcelFillPattern type exposes the following members.

Properties
  NameDescription
Public propertyCode exampleGradientColor1

Gets or sets the first color of the gradient fill effect.

Default value is color created from name Empty.

Gradient fill is currently supported in XLSX and partially in rendering formats (PDF, XPS and image formats).

Public propertyCode exampleGradientColor2

Gets or sets the second color of the gradient fill effect.

Default value is color created from name Empty.

Gradient fill is currently supported in XLSX and partially in rendering formats (PDF, XPS and image formats).

Public propertyCode exampleGradientStyle

Gets or sets the shading style of the gradient fill effect, if there is any gradient fill effect applied.

Default value is None.

Gradient fill is currently supported in XLSX and partially in rendering formats (PDF, XPS and image formats).

Public propertyCode examplePatternBackgroundColor

Gets or sets the pattern fill background color.

Default value is color created from name Empty.

Public propertyCode examplePatternForegroundColor

Gets or sets the pattern fill foreground color.

Default value is color created from name Empty.

Public propertyCode examplePatternStyle

Gets or sets the pattern fill style.

Default value is None.

Currently supported only in XLS and XLSX. For all other formats it defaults to either None or Solid.

If set value is not None, then PatternForegroundColor and/or PatternBackgroundColor should also be set.

Top
Methods
  NameDescription
Public methodCode exampleSetGradient
Sets the gradient fill effect.
Public methodCode exampleSetPattern
Sets the pattern fill.
Public methodCode exampleSetSolid

Sets the solid pattern fill with the specified fill color.

Sets PatternStyle to Solid and PatternForegroundColor to fillColor.

Public methodToString
Returns a String that represents this ExcelFillPattern instance.
(Overrides ObjectToString.)
Top
Remarks

Conceptually, cell formatting is divided into following groups:

  • Number - indicates how to format and render the numeric value of a cell. Associated property is NumberFormat.
  • Alignment - formatting information pertaining to text alignment in cells. Associated properties are HorizontalAlignment, VerticalAlignment, Indent, Rotation, IsTextVertical, WrapText and ShrinkToFit.
  • Font - defines the properties for the used font. Associated property is Font.
  • Border - expresses a single set of cell border formats (left, right, top, bottom and diagonal). Associated property is Borders.
  • Fill - specifies fill formatting (pattern or gradient). Associated property is FillPattern.
  • Protection - contains protection properties associated with the cell. Associated properties are Locked and FormulaHidden.

Additional CellStyle properties not associated with any formatting group are:

  • Name - name of the referenced workbook style.
  • QuotePrefix - to store numeric value of a cell as text; otherwise, .
  • IsDefault - if referenced workbook style is default (Normal) and there are no additional modifications of cell formatting; otherwise, .

Workbook contains a set of master styles which can be referenced by multiple cells.

Workbook must always contain at least one master style which cannot be removed and is, by default, referenced by all cells. This default style is Normal.

Workbook style can either be built-in or user-defined. Built-in style is accessible from workbook styles via BuiltInCellStyleName enumeration.

Cell formatting group (Number, Alignment, Font, Border, Fill or Protection) (and its associated properties) is resolved from referenced workbook (master) style, unless cell formatting group or its associated property is modified.

Cell formatting is available for one or more cells through Style property which is available on ExcelCell and CellRange types. Cell formatting specified on ExcelColumn and ExcelRow types through Style property is simply propagated to cell formatting of its Cells.

Note Note

For performance reasons, cell formatting on CellRange is resolved based just on its top-left cell formatting, except borders which are resolved based on corner cells depending on border side.

Setting cell formatting property on CellRange is propagated to each cell in a range.

To set workbook (master) style to one or more cells, simply assign it to Style property.

Tip Tip

Preferable way to modify formatting property of multiple cells is to get CellRange to which all those cells belong, and use Style property of that range to make the modification.

If modifying multiple formatting properties of a CellRange, without preserving unmodified formatting properties, preferable way is to create new instance of CellStyle, make modifications on it, and assign it to Style property of that range.

GemBox.Spreadsheet internally takes care not to allocate unnecessary cells when formatting a range of cells (for example, when formatting all worksheet cells) and to cache formatting information of equally formatted cells, at the appropriate time, to reduce memory footprint.

Examples

Following code demonstrates fill formatting:

// 'Fill' formatting group

cells["B24"].Value = "FillPattern.SetPattern(...)";
cells["C24"].Style.FillPattern.SetPattern(FillPatternStyle.ThinHorizontalCrosshatch, SpreadsheetColor.FromName(ColorName.Green), SpreadsheetColor.FromName(ColorName.Yellow));

cells["B25"].Value = "FillPattern.SetGradient(...)";
cells["C25"].Style.FillPattern.SetGradient(GradientShadingStyle.HorizontalHigh, SpreadsheetColor.FromName(ColorName.Green), SpreadsheetColor.FromName(ColorName.Yellow));
See Also