XMLNodes 控制項

更新:2007 年 11 月

適用於

本主題中的資訊僅適用於指定的 Visual Studio Tools for Office 專案和 Microsoft Office 版本。

專案類型

  • 文件層級專案

Microsoft Office 版本

  • Word 2007

  • Word 2003

如需詳細資訊,請參閱依應用程式和專案類型提供的功能

XMLNodes 控制項是公開 (Expose) 事件的對應 XML 節點物件集合。只有當重複的結構描述項目對應至 Microsoft Office Word 文件時,才會建立 XMLNodes 控制項。如果重複的項目包含子項目,則每個子項目也會建立為 XMLNodes 控制項。

一旦 Visual Studio Tools for Office 建立 XML 節點的集合後,您就可以直接對控制項進行程式設計,而不必周遊 Word 物件模型。只有移除文件中的項目對應,才能刪除 XMLNodes 控制項。

注意事項:

如果透過 Item 屬性存取 XMLNodes 控制項的子項目,則會傳回 Microsoft.Office.Interop.Word.XMLNode 物件,而非 Microsoft.Office.Tools.Word.XMLNode 控制項。如需詳細資訊,請參閱主項目和主控制項的程式設計限制

將資料繫結至控制項

XMLNodes 控制項不支援資料繫結 (Data Binding)。這是因為 XMLNodes 控制項沒有複雜資料繫結能力,而簡單資料繫結無法表示重複的資料。

格式

任何可套用至文件中文字的格式,都可套用至 XMLNodes 控制項。

事件

適用於 XMLNodes 控制項的事件為:

比較事件

當使用者在特定 XMLNodes 控制項內容中移動游標時,您可以擷取該事件。例如,您可能有名為 Customer 的 XMLNodes 控制項,該控制項有名為 Company 的 XMLNodes 子控制項,而 Company 有名為 CompanyName 和 CompanyRegion 的兩個 XMLNodes 子控制項,如下所示:

<Customer>
    <Company>
        <CompanyName>
        <CompanyRegion>

如果每當游標移至 Company 節點內,您就要在執行窗格上顯示控制項,則游標是否放在 CompanyName 或 CompanyRegion 中都應該無關,因為這兩者都是在 Company 的內容中。此時,您可以在 Company 的 ContextEnter 事件中撰寫程式碼。

在大部分情況下,當游標進入 XMLNodes 控制項時,會同時引發 SelectContextEnter 事件,下表說明這些事件之間的差異。

選取事件

ContextEnter 事件

當游標放在 XMLNodes 集合的其中一個節點時發生。

當游標從節點內容以外的區域,放到 XMLNodes 集合的其中一個節點或子代 (Descendant) 節點時發生。換句說,它只有在內容變更時才會引發,而且可能因為多個巢狀 XMLNodes 控制項而引發。

例如,當您將游標從 Customer 外部移至 CompanyName 內時,會引發 Customer、Company 和 CompanyName 的 ContextEnter 事件。如果您接著將游標從 CompanyName 移至 CompanyRegion,則只會引發 CompanyRegion 的 ContextEnter 事件,因為 Company 和 Customer 所處的內容都是一樣的。您的文件中可以有多個 Company 節點。如果您將游標從一個 Company 的 CompanyName 節點,移至另一個 Company 的 CompanyName 節點,則由於內容相同,因此只會引發 Select 事件。

ContextLeave 事件和 Deselect 事件之間也存在相同的差異。

請參閱

工作

HOW TO:將 XMLNodes 控制項加入至 Word 文件

HOW TO:在 Visual Studio 內將結構描述對應至 Word 文件

概念

主項目和主控制項概觀

XMLNode 控制項

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

其他資源

Word 主控制項

Excel 主控制項