Word 物件模型概觀

更新:2010 年 5 月

當您在 Visual Studio 中開發 Word 方案時,會與 Word 物件模型進行互動。 這個物件模型是由 Word 的主要 Interop 組件 (Assembly) 提供的類別 (Class) 和介面組成,並且在 Microsoft.Office.Interop.Word 命名空間 (Namespace) 中定義。

**適用於:**本主題中的資訊適用於 Word 2007 和 Word 2010 的文件層級專案和應用程式層級專案。如需詳細資訊,請參閱依 Office 應用程式和專案類型提供的功能

本主題提供 Word 物件模型的簡短概觀。 如需更多資源來了解整個 Word 物件模型,請參閱使用 Word 物件模型文件。

如需使用 Word 物件模型執行特定工作的詳細資訊,請參閱下列主題:

了解 Word 物件模型

Word 提供數百個物件,可以與您互動。 這些物件的組織密切依照使用者介面的階層架構。 階層架構的頂端是 Application 物件。 這個物件代表目前的 Word 執行個體 (Instance)。 Application 物件包含 DocumentSelectionBookmarkRange 物件。 這其中每一個物件都有許多方法和屬性,可供您存取來管理該物件並且與它互動。

下圖顯示這些物件在 Word 物件模型階層架構中的一景。

Word 物件模型摘要

Word 物件模型圖形

乍看之下,似乎有許多重疊。 例如,DocumentSelection 物件都是 Application 物件的成員,但是 Document 物件也是 Selection 物件的成員。 DocumentSelection 物件都包含 BookmarkRange 物件。 之所以會產生重疊現象,是因為有多種方式可以存取同類型的物件。 例如,您可以套用格式至 Range 物件,但您想要存取的範圍可能是目前選取範圍、特定段落、章節或整個文件。

下列各節簡述最上層的物件,並描述它們彼此的互動關係。 這些物件包含下列五個項目:

  • Application 物件

  • Document 物件

  • Selection 物件

  • Range 物件

  • Bookmark 物件

除了 Word 物件模型之外,Visual Studio 中的 Office 專案還提供「主項目」(Host Item) 和「主控制項」(Host Control),以擴充 Word 物件模型中的部分物件。 主項目和主控制項的行為與它們所擴充的 Word 物件相同,但是它們還具有其他功能 (例如資料繫結功能和額外事件)。 如需詳細資訊,請參閱使用擴充物件自動化 Word主項目和主控制項概觀

Application 物件

Application 物件代表 Word 應用程式,也是所有其他物件的父代 (Parent)。 它的成員通常是套用至 Word 整體。 您可以使用它的屬性和方法來控制 Word 環境。

在應用程式層級增益集專案中,您可以使用 ThisAddIn 類別的 Application 欄位存取 Application 物件。 如需詳細資訊,請參閱應用程式層級增益集程式設計

在文件層級專案中,您可以使用 ThisDocument 類別的 Application 屬性存取 Application 物件。

Document 物件

Microsoft.Office.Interop.Word.Document 物件是 Word 程式設計的核心。 它代表文件和其所有內容。 開啟文件或建立新文件時,會建立新的 Microsoft.Office.Interop.Word.Document 物件,該物件會加入至 Application 物件的 Documents 集合。 具有焦點 (Focus) 的文件稱為現用文件。 它是由 Application 物件的 ActiveDocument 屬性所代表。

Visual Studio 中的 Office 開發工具會藉由提供 Microsoft.Office.Tools.Word.Document 型別的方式擴充 Microsoft.Office.Interop.Word.Document 物件。 這個型別是「主項目」(Host Item),可讓您存取 Microsoft.Office.Interop.Word.Document 物件的所有功能,以及加入其他事件和加入 Managed 控制項的能力。

當您建立文件層級專案時,可以使用專案中所產生的 ThisDocument 類別存取 Microsoft.Office.Tools.Word.Document 成員。 您可以透過兩種方式存取 Microsoft.Office.Tools.Word.Document 主項目的成員,一種是在 ThisDocument 類別中使用來自程式碼的 Me 或 this 關鍵字,另一種使用 ThisDocument 類別外程式碼的 Globals.ThisDocument。 如需詳細資訊,請參閱文件層級自訂程式設計。 例如,若要選取文件中的第一段,請使用下列程式碼。

Me.Paragraphs(1).Range.Select()
this.Paragraphs[1].Range.Select();

在應用程式層級專案中,您可以在執行階段產生 Microsoft.Office.Tools.Word.Document 主項目。 您可以使用產生的主項目,將控制項和智慧標籤加入至相關聯的文件。 如需詳細資訊,請參閱在應用程式層級增益集的執行階段中擴充 Word 文件和 Excel 活頁簿

注意事項注意事項

智慧標籤在 Excel 2010 和 Word 2010 中已被取代。 如需詳細資訊,請參閱智慧標籤概觀

Selection 物件

Selection 物件代表目前選取的區域。 當您在 Word 使用者介面中執行某項作業時 (例如將文字設為粗體),您會選取 (或反白) 文字,然後套用格式。 文件中一定都會有 Selection 物件。 如果沒有選取任何項目,那麼就會顯示出插入點。 此外,選取範圍可以涵蓋多個不相連的文字區塊。

Range 物件

Range 物件代表文件中的連續區域,是以開頭字元位置和結束字元位置定義。 您不必侷限於單一 Range 物件。 您可以在同一個文件中定義多個 Range 物件。 Range 物件具有下列特性:

  • 可以由插入點單獨組成,也可以由文字範圍或整個文件組成。

  • 包含非列印的字元,例如空格、定位字元和段落標記。

  • 可以是目前選取範圍所代表的區域,也可以代表目前選取範圍以外的區域。

  • 它在文件中是看不見的,不像選取範圍永遠都看得見。

  • 它不會和文件一起儲存,只存在於程式碼執行的時候。

在範圍結尾插入文字時,Word 會自動擴充範圍以包含插入的文字。

內容控制項物件

Microsoft.Office.Interop.Word.ContentControl 可讓您控制文字和其他類型的內容在 Word 文件中的輸入和呈現方式。 Microsoft.Office.Interop.Word.ContentControl 可以顯示數種針對 Word 文件最佳化的不同 UI,例如 Rich Text 控制項、日期選擇器或下拉式方塊。 您也可以使用 Microsoft.Office.Interop.Word.ContentControl 防止使用者編輯文件或範本的某些區段。

Visual Studio 會將 Microsoft.Office.Interop.Word.ContentControl 物件擴充為多個不同的主控制項。 Microsoft.Office.Interop.Word.ContentControl 物件可以顯示任何不同類型的 UI 供內容控制項使用,而 Visual Studio 則為每個內容控制項提供不同的類型。 例如,您可以使用 Microsoft.Office.Tools.Word.RichTextContentControl 建立 Rich Text 控制項,或者可以使用 Microsoft.Office.Tools.Word.DatePickerContentControl 建立日期選擇器。 這些主控制項的行為如同原生 Microsoft.Office.Interop.Word.ContentControl,但是具有額外的事件和資料繫結功能。 如需詳細資訊,請參閱 內容控制項

Bookmark 物件

Microsoft.Office.Interop.Word.Bookmark 物件代表文件中的連續區域,有開頭位置也有結束位置。 您可以使用書籤在文件中標記位置,或是在文件中做為文字容器。 Microsoft.Office.Interop.Word.Bookmark 物件可以由插入點組成,也可以與整份文件一樣大。 Microsoft.Office.Interop.Word.Bookmark 具有下列特性,而與 Range 物件有所區別:

  • 您可以在設計階段為書籤命名。

  • Microsoft.Office.Interop.Word.Bookmark 物件是和文件一起儲存,所以在程式碼停止執行或文件關閉時也不會遭刪除。

  • 透過將 View 物件的 ShowBookmarks 屬性設定為 false 或 true,可以隱藏或顯示書籤。

Visual Studio 會藉由提供 Microsoft.Office.Tools.Word.Bookmark 主控制項擴充 Microsoft.Office.Interop.Word.Bookmark 物件。 Microsoft.Office.Tools.Word.Bookmark 主控制項的行為就像原生 Microsoft.Office.Interop.Word.Bookmark,但是前者另外具有事件和資料繫結功能。 您可以將資料繫結至文件上的書籤控制項,方式與將資料繫結至 Windows Form 上的文字方塊控制項相同。 如需詳細資訊,請參閱書籤控制項

使用 Word 物件模型文件

如需 Word 物件模型的完整資訊,您可以參閱 Word 主要 Interop 組件 (PIA) 參考和 VBA 物件模型參考。

主要 Interop 組件參考

Word PIA 參考文件說明 Word 主要 Interop 組件中的型別。 您可以從下列位置取得這份文件:Word 2010 主要 Interop 組件參考 (英文)。

注意事項注意事項

目前沒有 Word 2007 PIA 的參考文件。 但是,Word 2007 PIA 中的型別也包含在 Word 2010 PIA 中,所以這份參考文件中的資訊也適用於 Word 2007。

如需 Word PIA 設計上的詳細資訊,例如 PIA 中類別與介面的差異以及 PIA 中實作事件的方式,請參閱 Office 主要 Interop 組件中的類別和介面概觀 (英文)。

VBA 物件模型參考

VBA 物件模型參考記載 Word 物件模型公開給 Visual Basic for Application (VBA) 程式碼時的資訊。 您可以從下列位置取得 Word 適用的 VBA 物件模型參考:

VBA 物件模型參考中的所有物件和成員都會對應至 Word PIA 中的型別和成員。 例如,VBA 物件模型參考中的 Document 物件會對應至 Word PIA 中的 Microsoft.Office.Interop.Word.Document 物件。 雖然 VBA 物件模型參考提供大部分屬性、方法和事件的程式碼範例,但如果您想要在以 Visual Studio 建立的 Word 專案中使用這些程式碼範例,您必須將此參考中的 VBA 程式碼改成 Visual Basic 或 Visual C# 程式碼。

請參閱

參考

Office 主要 Interop 組件

概念

使用擴充物件自動化 Word

使用文件

處理文件中的文字

處理資料表

主項目和主控制項概觀

主項目和主控制項的程式設計限制

Office 方案中的選擇性參數

變更記錄

日期

記錄

原因

2010 年 5 月

更新有關物件模型參考文件的資訊。

資訊加強。