以编程方式折叠文档中的范围或选择
本文内容
如果你在使用 Range 或 Selection 对象,则可能要在插入文本之前更改对插入点的选择,以避免覆盖现有文本。 和Range Selection 对象都有一个 Collapse 方法,该方法使用WdCollapseDirection 枚举值:
折叠范围并插入新文本
创建一个包含文档中第一个段落的 Range 对象。
下面的代码示例可用于文档级自定义项。
Word.Range rng = this.Paragraphs[1].Range;
Dim rng As Word.Range = Me.Paragraphs(1).Range
以下代码示例可用于 VSTO 外接程序。 此代码运用了活动文档。
Word.Range rng = this.Application.ActiveDocument.Paragraphs[1].Range;
Dim rng As Word.Range = Me.Application.ActiveDocument.Paragraphs(1).Range
使用 wdCollapseStart 枚举值折叠范围。
rng.Collapse(Word.WdCollapseDirection.wdCollapseStart);
rng.Collapse(Word.WdCollapseDirection.wdCollapseStart)
插入新文本。
选择 Range 。
如果使用 wdCollapseEnd 枚举值,则文本会在后续段落开头处插入。
rng.Collapse(Word.WdCollapseDirection.wdCollapseEnd);
rng.Collapse(Word.WdCollapseDirection.wdCollapseEnd)
你可能预计插入新句子是在段落标记之前插入它,但情况并非如此,因为原始范围包含段落标记。
文档级自定义示例
在文档级自定义项中折叠范围
下面的示例显示针对文档级自定项的完整方法。 若要使用此代码,请从项目中的 ThisDocument
类运行它。
Word.Range rng = this.Paragraphs[1].Range;
rng.Collapse(Word.WdCollapseDirection.wdCollapseStart);
rng.Text = " New Text ";
rng.Select();
Dim rng As Word.Range = Me.Paragraphs(1).Range
rng.Collapse(Word.WdCollapseDirection.wdCollapseStart)
rng.Text = " New Text "
rng.Select()
VSTO 外接程序示例
在 VSTO 外接程序中折叠区域
以下示例演示 VSTO 外接程序的完整方法。 若要使用此代码,请从项目中的 ThisAddIn
类运行它。
Word.Range rng = this.Application.ActiveDocument.Paragraphs[1].Range;
rng.Collapse(Word.WdCollapseDirection.wdCollapseStart);
rng.Text = " New Text ";
rng.Select();
Dim rng As Word.Range = Me.Application.ActiveDocument.Paragraphs(1).Range
rng.Collapse(Word.WdCollapseDirection.wdCollapseStart)
rng.Text = " New Text "
rng.Select()
相关内容