自訂編輯器由兩部分組成:文件資料物件和文件檢視物件。 顧名思義,文件資料物件代表要顯示的文字資料。 同樣地,文件檢視物件 (或「檢視」) 代表要在其中顯示文件資料物件的一或多個視窗。
文件資料物件
文件資料物件是文字緩衝區中文字的資料表示法。 它是儲存文件文字和其他資訊的 COM 物件。 文件資料物件也會處理文件持久性,並提供其資料的多個視圖。 如需相關資訊,請參閱
自訂編輯器和設計工具可以選擇使用 VsTextBuffer 物件或自己的自訂緩衝區。 VsTextBuffer 遵循標準編輯器的簡化內嵌模型,支援多個視圖,並提供用來管理多個視圖的事件介面。
文件檢視物件
顯示程式碼和其他文字的視窗稱為文件檢視或檢視。 當您建立編輯器時,您可以選擇單一視圖,其中文字顯示在單一視窗中。 或者,您可以選擇多重檢視,其中文字顯示在多個視窗中。 您的選擇取決於您的應用。 例如,如果您需要並排編輯,您可以選擇多視圖。 每個檢視都與整合式開發環境(IDE)運行文件表(RDT)中的項目相關聯。 檢視視窗屬於專案或 IVsHierarchy 物件。
如果您的編輯器支援文件資料物件的多個檢視,則您的文件資料和文件檢視物件必須分開。 否則,可以將它們分組在一起。 如需詳細資訊,請參閱 支援多個文件檢視。
IDE 會比對執行中文件表格中每個項目的項目識別碼 (ItemID) 來通知檢視有關事件 (例如,當包含文件的解決方案關閉時)。 如需相關資訊,請參閱 執行文件表格。
有兩個選項可用於建立自訂編輯器的視圖。 其中一個是就地啟用範本,其中檢視會使用 ActiveX 控制項或文件資料物件裝載在視窗中。 第二個是簡化的內嵌模型,其中檢視由 Visual Studio 裝載,並 IVsWindowPane 實作來處理視窗命令。 如需就地啟用模型的相關資訊,請參閱 就地啟用。 如需簡化內嵌模型的相關資訊,請參閱 簡化內嵌。