VisibilityItem 元素
元素 VisibilityItem
會決定命令和工具列的靜態可見性。 每個項目都會識別命令或功能表,以及相關聯的命令UI內容。 Visual Studio 會偵測命令、功能表和工具列及其可見度,而不會載入定義它們的 VSPackage。 IDE 會使用 IsCmdUIContextActive 方法來判斷命令 UI 內容是否為使用中。
載入 VSPackage 之後,Visual Studio 預期命令可見性將由 VSPackage 決定,而不是 VisibilityItem
。 若要判斷命令的可見性,您可以 BeforeQueryStatus 實作事件處理程式或 QueryStatus 方法,視您實作命令的方式而定。
只有相關聯的內容處於使用中狀態時,才會顯示具有 VisibilityItem
元素的命令或功能表。 您可以藉由包含每個命令內容組合的專案,將單一命令、功能表或工具列與一或多個命令 UI 內容產生關聯。 如果命令或功能表與多個命令 UI 內容相關聯,當任一個相關聯的命令 UI 內容為使用中時,即會顯示命令或功能表。
元素 VisibilityItem
僅適用於命令、功能表和工具列,不適用於群組。 每當其父功能表處於使用中狀態時,就可以看到沒有相關 VisibilityItem
元素的專案。
語法
<VisibilityItem
guid="cmdGuidMyProductCommands"
id="cmdidAddWidget"
context="guidNotViewSourceMode"/>
屬性和元素
下列章節說明屬性、子元素和父元素。
屬性
屬性 | 描述 |
---|---|
guid | 必要。 GUID/ID 命令標識符的 GUID。 |
id | 必要。 GUID/ID 命令標識碼的標識碼。 |
內容 | 必要。 顯示命令的UI內容。 |
Condition | 選擇性。 請參閱 條件屬性。 |
子元素
None
父元素
元素 | 描述 |
---|---|
VisibilityConstraints 元素 | 元素 VisibilityConstraints 會決定命令和工具列群組的靜態可見性。 |
備註
標準 Visual Studio UI 內容定義於 Visual Studio SDK 安裝路徑\VisualStudioIntegration\Common\Inc\vsshlids.h 檔案以及 和 UIContextGuids80 類別中UIContextGuids。 類別中 VSConstants 定義了一組更完整的UI內容。
範例
<VisibilityConstraints>
<VisibilityItem guid="cmdSetGuidMyProductCommands" id="cmdidAddWidget"
context="guidNotViewSourceMode"/>
</VisibilityConstraints>