Skip to main content
A newer version of this page is available. .

RichEditControl.BeginUpdate() Method

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

Namespace: DevExpress.Xpf.RichEdit

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

NuGet Packages: DevExpress.WindowsDesktop.Wpf.RichEdit, 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