共用方式為


Office 方案程式撰寫模型

更新:2007 年 11 月

Microsoft Office 物件模型公開您可以進行程式設計的各種物件。通常當您透過 Automation 對 Microsoft Office 應用程式使用 Managed 程式碼進行程式設計時,您是直接對主要 Interop 組件 (Assembly) 撰寫程式碼。在 Visual Studio Tools for Office 方案中,您要同樣地直接對專案中的「主項目」(Host Item) 撰寫程式碼。

Visual Studio Tools for Office 還擴充了 Microsoft Office Word 和 Microsoft Office Excel 中的部分物件,像是加入事件和資料繫結 (Data Binding) 功能,並將這些功能公開 (Expose) 為可以加入至文件的控制項 (就像將其他控制項加入至 Windows Form 一樣)。這些擴充的控制項稱為「主控制項」(Host Control)。

使用主項目

主項目提供 Startup 和 Shutdown 事件,這些事件是程式碼的進入點 (Entry Point)。若要初始化增益集,您可以將程式碼加入至 Startup 事件處理常式。若要清除增益集使用的資源,則可將程式碼加入至 Shutdown 事件處理常式。如需詳細資訊,請參閱 Visual Studio Tools for Office 專案事件

主項目也提供主應用程式 (Host Application) 之物件模型 (Object Model) 的進入點。Excel 和 Word 的專案會提供與主應用程式物件模型中的類別 (Class) 類似的主項目。例如,Word 文件專案中的 Microsoft.Office.Tools.Word.Document 主項目類別與 Word 物件模型中的 Microsoft.Office.Interop.Word.Document 類別提供相同的成員。如需詳細資訊,請參閱主項目和主控制項概觀

應用程式層級專案會提供 AddIn 主項目。這個主項目並非衍生自主應用程式物件模型中的類別。相反地,它會提供可傳回代表目前主應用程式執行個體 (Instance) 之物件的 Application 欄位。如需詳細資訊,請參閱應用程式層級增益集程式設計

使用主控制項事件和資料繫結

主控制項具有可程式化的事件。例如,原生 Excel Microsoft.Office.Interop.Excel.Range 並沒有任何事件,但您可以針對 NamedRange 主控制項的 Change 事件進行程式設計。如需詳細資訊,請參閱逐步解說:針對 NamedRange 控制項的事件進行程式設計

您可以針對這些事件編寫程式碼,方式跟在 Windows Form 上使用控制項的事件相同。如需詳細資訊,請參閱事件概觀 (Windows Form)

主控制項也有資料繫結功能,運作方式與 Windows Form 上的控制項類似。主控制項可讓您執行簡單資料繫結或複雜資料繫結。如需詳細資訊,請參閱將資料繫結至控制項資料繫結和 Windows Form

針對文件層級專案中的資料進行程式設計

文件層級專案中的資料可以儲存在內嵌的資料島 (Data Island) 中,與文件分開存放,與 ASP.NET 網頁存放資料的方式相同。使用內嵌資料島存放資料,可以直接存取資料,而毋需啟動 Word 或 Excel,將文件具現化,也毋需使用應用程式的物件模型。如需詳細資訊,請參閱文件層級自訂中的資料概觀

以結構描述為基礎的程式設計

在 Office 專案中,建議您存取及管理資料方式為:建立具型別的資料集,以保存所使用的資料。透過以結構描述為基礎的程式設計,您便可以使用商務導向程式碼取代 Office 導向程式碼,自行定義物件模型,並以更直覺的方式撰寫程式。您可以全心專注於方案,而不需要分心注意 Office 物件模型。如需具型別資料集的詳細資訊,請參閱 Visual Studio 中的資料集概觀

伺服器端程式設計

由於資料是存放於內嵌的資料島中,因此您不需要啟動 Microsoft Office 應用程式,就可以直接存取存放在伺服器上且與文件相關聯的資料。如需詳細資訊,請參閱存取伺服器文件中的資料

請參閱

概念

文件層級自訂程式設計

應用程式層級增益集程式設計

存取伺服器文件中的資料

主項目和主控制項概觀

其他資源

Office 文件上的控制項

Office 方案的資料