public void EditableRangeEx()
{
//ExStart
//ExFor:DocumentBuilder.StartEditableRange
//ExFor:DocumentBuilder.EndEditableRange()
//ExFor:DocumentBuilder.EndEditableRange(EditableRangeStart)
//ExSummary:Shows how to start and end an editable range.
Document doc = new Document(MyDir + "Document.doc");
DocumentBuilder builder = new DocumentBuilder(doc);
// Start an editable range.
EditableRangeStart edRange1Start = builder.StartEditableRange();
// An EditableRange object is created for the EditableRangeStart that we just made.
EditableRange editableRange1 = edRange1Start.EditableRange;
// Put something inside the editable range.
builder.Writeln("Paragraph inside first editable range");
// An editable range is well-formed if it has a start and an end.
// Multiple editable ranges can be nested and overlapping.
EditableRangeEnd edRange1End = builder.EndEditableRange();
// Both the start and end automatically belong to editableRange1.
Console.WriteLine(editableRange1.EditableRangeStart.Equals(edRange1Start)); // True
Console.WriteLine(editableRange1.EditableRangeEnd.Equals(edRange1End)); // True
// Explicitly state which EditableRangeStart a new EditableRangeEnd should be paired with.
EditableRangeStart edRange2Start = builder.StartEditableRange();
builder.Writeln("Paragraph inside second editable range");
EditableRange editableRange2 = edRange2Start.EditableRange;
EditableRangeEnd edRange2End = builder.EndEditableRange(edRange2Start);
// Both the start and end automatically belong to editableRange2.
Console.WriteLine(editableRange2.EditableRangeStart.Equals(edRange2Start)); // True
Console.WriteLine(editableRange2.EditableRangeEnd.Equals(edRange2End)); // True
//ExEnd
}