Skip to main content
.NET Framework 4.5.2+
Row

Formatting.EndUpdate() Method

Unlocks the Formatting object after a call to the BeginUpdate method and causes an immediate visual update.

Namespace: DevExpress.Spreadsheet

Assembly: DevExpress.Spreadsheet.v22.1.Core.dll

Declaration

void EndUpdate()

Remarks

The BeginUpdate and EndUpdate methods allow you to avoid flickering while performing batch modifications to the Formatting‘s settings. Once the BeginUpdate method has been called, modifying the Formatting‘s settings does not result in immediate repainting. So, multiple modifications can be made to the object without a major impact on performance or screen flickering. After all the desired operations have been finished, call the EndUpdate method.

The BeginUpdate and EndUpdate methods use an internal counter to implement the update functionality. The counter’s initial value is 0. Visual updates are forbidden if the counter’s value is greater than 0, and the updates are enabled if the counter’s value is 0. The BeginUpdate method increments the counter. The EndUpdate method decrements the counter. If the counter’s new value is 0, an immediate visual update occurs. Each call to BeginUpdate must be paired with a call to EndUpdate. To ensure that EndUpdate is always called even if an exception occurs, use the try…finally statement.

Example

  1. Use a style‘s index or name to obtain it from the Workbook.Styles collection.

  2. To change the style’s format attributes, modify the Style object’s properties within the Formatting.BeginUpdate - Formatting.EndUpdate method calls.

// Access a style you want to modify.
Style customStyle = workbook.Styles["Custom Style"];

// Change the style's format characteristics.
customStyle.BeginUpdate();
try {
    customStyle.Fill.BackgroundColor = Color.Gold;
    // ...
} finally {
    customStyle.EndUpdate();
}

The following code snippets (auto-collected from DevExpress Examples) contain references to the EndUpdate() method.

Note

The algorithm used to collect these code examples remains a work in progress. Accordingly, the links and snippets below may produce inaccurate results. If you encounter an issue with code examples below, please use the feedback form on this page to report the issue.

See Also