使用 VSTO 2005 创建的最基本形式的自定义项由两个文件组成:一个 Word 文档或 Excel 工作簿以及一个程序集(Visual Studio 将其编译为 .dll 文件)
若要开发使用 Microsoft Office Word 的解决方案,可以与 Word 对象模型提供的对象进行交互。Word 对象是按层次顺序排列的,层次结构顶端的两个主类是 Application 和 Document 类。这两个类非常重要,原因是在大部分时间里,您要么是在使用 Word 应用程序本身,要么是以某种方式处理 Word 文档。
Word 对象模型严格遵循用户界面。Application 对象表示整个应用程序,每个 Document 对象表示单个 Word 文档,Paragraph 对象对应于单个段,以此类推。这些对象各自都有很多方法和属性,您可以使用这些方法和属性操作对象或与对象交互。
Application 对象
Application 对象表示 Word 应用程序,是其他所有对象的父级。它的所有成员通常作为一个整体应用于 Word。可以使用该对象的属性和方法来控制 Word 环境。
Document 对象
Microsoft.Office.Interop.Word.Document 对象是 Word 编程的中枢。当您打开文档或创建新文档时,就创建了新的 Microsoft.Office.Interop.Word.Document 对象,该对象被添加到 Word 的 Documents 集合中。焦点所在的文档叫做活动文档,由 Application 对象的 ActiveDocument 属性表示。可以使用 this 对象引用来访问 ThisDocument 的成员。
Selection 对象
Selection 对象表示当前选择的区域。如果未选中任何对象,它表示插入点。此外,它也可以是不连续的多个文本块。使用this.Sections可获取当前文档的所有节。
Range 对象
Range 对象表示文档中的一个连续的区域,由一个起始字符位置和一个结束字符位置定义。Range 对象的数量并不局限于一个。您可以在同一文档中定义多个 Range 对象。Range 对象具有下面的特性:
· 它的组成成分可以是单独的插入点,也可以是一个文本范围或整个文档。
· 它包含非打印字符,例如空格、制表符和段落标记。
· 它可以是当前选择所表示的区域,也可以表示当前选择之外的区域。
· 与所选内容总是可见不同,它在文档中是不可见的。
· 它不随文档保存,仅存在于代码运行期间。
在向一个范围的末尾插入文本时,Word 会自动扩展该范围以包含插入的文本。