Skip to main content

DevExpress v24.2 Update — Your Feedback Matters

Our What's New in v24.2 webpage includes product-specific surveys. Your response to our survey questions will help us measure product satisfaction for features released in this major update and help us refine our plans for our next major release.

Take the survey Not interested

RichEditControl.BeginUpdate() Method

In This Article

Locks the RichEditControl to prevent its visual updates until the RichEditControl.EndUpdate method is called.

Namespace: DevExpress.Xpf.RichEdit

Assembly: DevExpress.Xpf.RichEdit.v24.2.dll

NuGet Package: DevExpress.Wpf.RichEdit

#Declaration

public void BeginUpdate()

#Remarks

Enclose your code in the BeginUpdate - RichEditControl.EndUpdate method calls to suppress the RichEditControl’s visual updates and improve its performance when you perform multiple changes to a document.

Each call to BeginUpdate must be paired with the RichEditControl.EndUpdate call. The BeginUpdate method locks the RichEditControl, so that it is not rendered after each modification. The RichEditControl.EndUpdate method unlocks the control to enable all the changes to take effect. You can use the try…finally statement to ensure that RichEditControl.EndUpdate is always called even if an exception occurs.

The following example shows how to use the BeginUpdate - RichEditControl.EndUpdate methods.

richEditControl1.BeginUpdate();
try
{
    Document document = richEditControl1.Document;

    // Create a multiplication table.
    Table table = document.Tables.Create(document.Selection.Start, 8, 8, AutoFitBehaviorType.AutoFitToWindow);

    table.Borders.InsideHorizontalBorder.LineThickness = 1;
    table.Borders.InsideHorizontalBorder.LineStyle = TableBorderLineStyle.Double;
    table.Borders.InsideVerticalBorder.LineThickness = 1;
    table.Borders.InsideVerticalBorder.LineStyle = TableBorderLineStyle.Double;
    table.TableAlignment = TableRowAlignment.Center;

    table.ForEachCell((cell, rowIndex, columnIndex) =>
    {
        document.InsertText(cell.Range.Start, String.Format("{0}*{1} = {2}",
             columnIndex + 2, rowIndex + 2, (rowIndex + 2) * (columnIndex + 2)));
    });

}
finally
{
    richEditControl1.EndUpdate();
}
See Also