VisibilityItem 要素

VisibilityItem 要素では、コマンドとツールバーを静的に表示するかどうかを決定します。 各エントリによって、コマンドまたはメニュー、および関連付けられているコマンド UI コンテキストを識別します。 Visual Studio では、コマンド、メニュー、ツールバー、およびそれらの表示/非表示を、これらを定義する VSPackage を読み込まずに検出します。 IDE では、IsCmdUIContextActive メソッドを使用して、コマンド UI コンテキストがアクティブかどうかを判定します。

Visual Studio では、VSPackage が読み込まれた後、VisibilityItem ではなく VSPackage によってコマンドの表示/非表示が決定されることを想定しています。 コマンドの表示/非表示を決定するには、コマンドの実装方法に応じて、BeforeQueryStatus イベント ハンドラーまたは QueryStatus メソッドのいずれかを実装します。

VisibilityItem 要素を含むコマンドまたはメニューは、関連付けられたコンテキストがアクティブな場合にのみ表示されます。 1 つのコマンド、メニュー、またはツールバーを 1 つ以上のコマンド UI コンテキストと関連付けるには、コマンド コンテキストの組み合わせごとに 1 つのエントリを追加します。 コマンドまたはメニューが複数のコマンド UI コンテキストに関連付けられている場合は、関連付けられているコマンド UI コンテキストのいずれかがアクティブになっているときに、そのコマンドまたはメニューが表示されます。

VisibilityItem 要素は、グループではなく、コマンド、メニュー、ツールバーにのみ適用されます。 関連する VisibilityItem 要素を持たない要素は、その親メニューがアクティブになるたびに表示されます。

構文

<VisibilityItem
  guid="cmdGuidMyProductCommands"
  id="cmdidAddWidget"
  context="guidNotViewSourceMode"/>

属性と要素

以降のセクションでは、属性、子要素、および親要素について説明します。

属性

属性 説明
guid 必須。 GUID/ID コマンド識別子の GUID。
ID 必須。 GUID/ID コマンド識別子の ID。
context 必須。 コマンドが表示される UI コンテキスト。
条件 省略可能。 条件付き属性に関するページを参照してください。

子要素

なし

親要素

要素 説明
VisibilityConstraints 要素 VisibilityConstraints 要素では、コマンドとツールバーのグループを静的に表示するかどうかを決定します。

解説

標準の Visual Studio UI コンテキストは、<Visual Studio SDK のインストール パス>\VisualStudioIntegration\Common\Inc\vsshlids.h ファイルと共に、UIContextGuids クラスおよび UIContextGuids80 クラスでも定義されています。 UI コンテキストの完全なセットは、VSConstants クラスで定義されています。

<VisibilityConstraints>
  <VisibilityItem guid="cmdSetGuidMyProductCommands"     id="cmdidAddWidget"
    context="guidNotViewSourceMode"/>
</VisibilityConstraints>

関連項目