共用方式為


命令可用性

Visual Studio 內容會決定哪些命令可供使用。 內容可能會根據目前的專案、目前的編輯器、載入的 VSPackage 以及整合式開發環境 (IDE) 的其他層面而變更。

命令內容

下列命令內容是最常見的:

  • IDE:IDE 提供的命令一律可用。

  • VSPackage:VSPackage 可以定義何時顯示或隱藏命令。

  • 專案:專案指令只會針對目前選取的專案顯示。

  • 編輯器:一次只能有一個編輯器處於作用中狀態。 可以使用使用中編輯器中的命令。 編輯器與語言服務密切合作。 語言服務必須在相關聯編輯器的內容中處理其命令。

  • 檔案類型:編輯器可以載入多種類型的檔案。 可用的命令可能會根據檔案類型而變更。

  • 作用中視窗:最後一個作用中的文件視窗會設定按鍵繫結的使用者介面 (UI) 內容。 不過,具有類似於內部 Web 瀏覽器的按鍵繫結資料表的工具視窗也可以設定 UI 內容。 對於多索引標籤文件視窗,例如 HTML 編輯器,每個索引標籤都有不同的命令內容 GUID。 註冊工具視窗後,它始終可在 [檢視 ] 功能表上使用。

  • UI 內容:UI 內容是由類別的 VSConstants.UICONTEXT 值所識別,例如, SolutionBuilding_guid 建置解決方案時,或 Debugging_guid 偵錯工具處於作用中狀態時。 多個 UI 內容可以同時處於作用中狀態。

定義自訂情境 GUID

如果尚未定義適當的命令內容 GUID,您可以在 VSPackage 中定義一個 GUID,然後視需要將它編程為作用中或非作用中,以控制命令的可見度:

  1. 呼叫 GetCmdUIContextCookie 方法來註冊內容 GUID。

  2. 請呼叫 IsCmdUIContextActive 方法以取得內容 GUID 的狀態。

  3. 使用呼叫SetCmdUIContext方法來開啟或關閉上下文GUID。

謹慎

請確保您的 VSPackage 不會干擾任何現有的內容 GUID,因為其他 VSPackage 可能依賴它們。