officefileapi-devexpress-dot-xtrarichedit-dot-api-dot-native-dot-documentposition.md
Starts modifying the document obtained via the document’s position (e.g. via the caret position).
Namespace : DevExpress.XtraRichEdit.API.Native
Assembly : DevExpress.RichEdit.v25.2.Core.dll
NuGet Package : DevExpress.RichEdit.Core
public abstract SubDocument BeginUpdateDocument()
Public MustOverride Function BeginUpdateDocument As SubDocument
| Type | Description |
|---|---|
| SubDocument |
A SubDocument instance allowing you to safely modify the document.
|
Use the DocumentPosition.BeginUpdateDocument - DocumentPosition.EndUpdateDocument pair to modify the document obtained via its position in that document (i.e. by using the Document.CaretPosition property). In that case, it is very important to distinguish different parts of the document, such as header, footer or body. The BeginUpdateDocument method implements this requirement.
Note
If the location of the obtained document position is ambiguous (it may belong to either header, footer or body of the document), use the BeginUpdateDocument to perform modifications. Otherwise, an exception may occur.
The following code snippets (auto-collected from DevExpress Examples) contain references to the BeginUpdateDocument() 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.
winforms-richedit-document-api/CS/RichEditAPISample/CodeExamples/FormFields.cs#L17
DocumentPosition currentPosition = document.CaretPosition;
SubDocument currentDocument = currentPosition.BeginUpdateDocument();
DevExpress.XtraRichEdit.API.Native.CheckBox checkBox = document.FormFields.InsertCheckBox(currentPosition);
wpf-richedit-document-api/CS/DXRichEditControlAPISample/CodeExamples/RangeActions.cs#L23
DocumentPosition pos = document.CaretPosition;
SubDocument doc = pos.BeginUpdateDocument();
doc.InsertText(pos, " INSERTED TEXT ");
public static string GetInformationAboutRichEditDocumentLayout(Document currentDocument, DocumentLayout currentDocumentLayout) {
SubDocument subDocument = currentDocument.CaretPosition.BeginUpdateDocument();
DocumentPosition docPosition = subDocument.CreatePosition(currentDocument.CaretPosition.ToInt() == 0 ? 0 : currentDocument.CaretPosition.ToInt() - 1);
winforms-richedit-layout-api/CS/Form1.cs#L81
#region #GetPageForPosition
SubDocument subDoc = richEditControl1.Document.CaretPosition.BeginUpdateDocument();
DocumentPosition pos = subDoc.CreatePosition(richEditControl1.Document.CaretPosition.ToInt() == 0 ? 0 : richEditControl1.Document.CaretPosition.ToInt() - 1);
word-document-api-examples/CS/CodeExamples/RangeActions.cs#L92
// Append text to the end of the last paragraph.
SubDocument doc = pos.BeginUpdateDocument();
Paragraph par = doc.Paragraphs.Get(pos);
winforms-richedit-document-api/VB/RichEditAPISample/CodeExamples/FormFields.vb#L15
Dim currentPosition As DevExpress.XtraRichEdit.API.Native.DocumentPosition = document.CaretPosition
Dim currentDocument As DevExpress.XtraRichEdit.API.Native.SubDocument = currentPosition.BeginUpdateDocument()
Dim checkBox As DevExpress.XtraRichEdit.API.Native.CheckBox = document.FormFields.InsertCheckBox(currentPosition)
wpf-richedit-document-api/VB/DXRichEditControlAPISample/CodeExamples/RangeActions.vb#L19
Dim pos As DocumentPosition = document.CaretPosition
Dim doc As SubDocument = pos.BeginUpdateDocument()
doc.InsertText(pos, " INSERTED TEXT ")
Public Shared Function GetInformationAboutRichEditDocumentLayout(ByVal currentDocument As Document, ByVal currentDocumentLayout As DocumentLayout) As String
Dim subDocument As SubDocument = currentDocument.CaretPosition.BeginUpdateDocument()
Dim docPosition As DocumentPosition = subDocument.CreatePosition(If(currentDocument.CaretPosition.ToInt() = 0, 0, currentDocument.CaretPosition.ToInt() - 1))
winforms-richedit-layout-api/VB/Form1.vb#L68
' #Region "#GetPageForPosition"
Dim subDoc As SubDocument = richEditControl1.Document.CaretPosition.BeginUpdateDocument()
Dim pos As DocumentPosition = subDoc.CreatePosition(If(richEditControl1.Document.CaretPosition.ToInt() = 0, 0, richEditControl1.Document.CaretPosition.ToInt() - 1))
word-document-api-examples/VB/CodeExamples/RangeActions.vb#L82
' Append text to the end of the last paragraph.
Dim doc As DevExpress.XtraRichEdit.API.Native.SubDocument = pos.BeginUpdateDocument()
Dim par As DevExpress.XtraRichEdit.API.Native.Paragraph = doc.Paragraphs.[Get](pos)
See Also