次の方法で共有


Menu 型の Control 要素

メニューは、オプションの一覧を定義します。 各メニュー項目は、関数を実行したり、作業ウィンドウを表示したりします。

注:

この記事では、要素の属性に関する重要な情報を含む基本的な Control リファレンス記事 について理解していることを前提としています。

メニュー コントロールは次を定義します。

  • ルート レベルのメニュー コントロール。
  • メニュー項目の一覧。

PrimaryCommandSurface 拡張ポイントと共に使用すると、ルート メニュー項目がリボンのボタンとして表示されます。 ボタンを選択すると、メニューがドロップダウン リストとして表示されます。 サブメニューはサポートされません。

ContextMenu 拡張ポイントと共に使用すると、コンテキスト メニューにルート メニュー項目が表示されます。 ルート項目を選択すると、メニュー項目がサブメニューとして表示されます。 1 レベルのサブメニューのみがサポートされているため、項目自体をサブメニューにすることはできません。

子要素

要素 必須 説明
Label はい メニューのテキストです。
<ツールヒント> いいえ メニューのツールヒント。 resid 属性は 32 文字以内であり、<String> 要素の id 属性の値に設定する必要があります。 <String> 要素は、Resources 要素の子である <LongStrings>要素の子です。
Supertip はい このメニューのスーパーヒント。

重要: スーパーヒントは、Office デスクトップ クライアントでのみサポートされます。
Icon はい メニューのの画像。
<アイテム> はい メニュー内に表示する項目のコレクション。 各項目の <Item> 要素を格納します。
OverriddenByRibbonApi いいえ カスタム コンテキスト タブをサポートするアプリケーションとプラットフォームの組み合わせにメニューを表示するかどうかを指定します。 を使用する場合は、 最初 の子要素である必要があります。

Label

メニュー名のテキストを、32 文字以下で指定でき、Resources 要素の<ShortStrings> 子の <String> 要素の id 属性の値に設定する必要がある唯一の属性指定します。

アドインの種類: 作業ウィンドウ、メール

次の VersionOverrides スキーマでのみ有効です:

  • 作業ウィンドウ 1.0
  • メール 1.0
  • メール 1.1

詳細については、「 アドインのみのマニフェストでのバージョンのオーバーライド」を参照してください。

次の要件セットに関連付けられています:

  • <VersionOverrides> が Taskpane 1.0 型の場合、AddinCommands 1.1
  • <VersionOverrides> が Mail 1.0 型の場合、Mailbox 1.3
  • <VersionOverrides> が Mail 1.1 型の場合、Mailbox 1.5

次の例では、メニューに 2 つの項目があります。 最初に作業ウィンドウが表示されます。 2 つ目は関数を実行します。 コンテキスト タブをサポートするプラットフォームでアドインが実行されている場合、メニューが表示 されないように 構成されています。 詳細については、「 カスタム コンテキスト タブがサポートされていない場合に代替 UI エクスペリエンスを実装する」を参照してください。

<Control xsi:type="Menu" id="Contoso.TestMenu2">
  <OverriddenByRibbonApi>true</OverriddenByRibbonApi>
  <Label resid="residLabel3" />
  <Tooltip resid="residToolTip" />
  <Supertip>
    <Title resid="residLabel" />
    <Description resid="residToolTip" />
  </Supertip>
  <Icon>
    <bt:Image size="16" resid="icon1_32x32" />
    <bt:Image size="32" resid="icon1_32x32" />
    <bt:Image size="80" resid="icon1_32x32" />
  </Icon>
  <Items>
    <Item id="ShowMainTaskPane">
      <Label resid="residLabel3"/>
      <Supertip>
        <Title resid="residLabel" />
        <Description resid="residToolTip" />
      </Supertip>
      <Icon>
        <bt:Image size="16" resid="icon1_32x32" />
        <bt:Image size="32" resid="icon1_32x32" />
        <bt:Image size="80" resid="icon1_32x32" />
      </Icon>
      <Action xsi:type="ShowTaskpane">
        <TaskpaneId>MyTaskPaneID1</TaskpaneId>
        <SourceLocation resid="residUnitConverterUrl" />
      </Action>
    </Item>
    <Item id="GetData">
      <Label resid="residLabel5"/>
      <Supertip>
        <Title resid="residLabel" />
        <Description resid="residToolTip" />
      </Supertip>
      <Icon>
        <bt:Image size="16" resid="icon4_32x32" />
        <bt:Image size="32" resid="icon4_32x32" />
        <bt:Image size="80" resid="icon4_32x32" />
      </Icon>
      <Action xsi:type="ExecuteFunction">
        <FunctionName>getData</FunctionName>
      </Action>
    </Item>
  </Items>
</Control>

次の例では、コンテキスト タブをサポートするプラットフォームでアドインが実行されているときに、メニューの 2 番目の項目が表示 されないように 構成されています。 詳細については、「 カスタム コンテキスト タブがサポートされていない場合に代替 UI エクスペリエンスを実装する」を参照してください。

<Control xsi:type="Menu" id="Contoso.msgReadMenuButton">
  <Label resid="menuReadButtonLabel" />
  <Supertip>
    <Title resid="menuReadSuperTipTitle" />
    <Description resid="menuReadSuperTipDescription" />
  </Supertip>
  <Icon>
    <bt:Image size="16" resid="red-icon-16" />
    <bt:Image size="32" resid="red-icon-32" />
    <bt:Image size="80" resid="red-icon-80" />
  </Icon>
  <Items>
    <Item id="ShowMainTaskPane">
      <Label resid="residLabel3"/>
      <Supertip>
        <Title resid="residLabel" />
        <Description resid="residToolTip" />
      </Supertip>
      <Icon>
        <bt:Image size="16" resid="icon1_32x32" />
        <bt:Image size="32" resid="icon1_32x32" />
        <bt:Image size="80" resid="icon1_32x32" />
      </Icon>
      <Action xsi:type="ShowTaskpane">
        <TaskpaneId>MyTaskPaneID1</TaskpaneId>
        <SourceLocation resid="residUnitConverterUrl" />
      </Action>
    </Item>
    <Item id="msgReadMenuItem1">
      <OverriddenByRibbonApi>true</OverriddenByRibbonApi>
      <Label resid="menuItem1ReadLabel" />
      <Supertip>
        <Title resid="menuItem1ReadLabel" />
        <Description resid="menuItem1ReadTip" />
      </Supertip>
      <Icon>
        <bt:Image size="16" resid="red-icon-16" />
        <bt:Image size="32" resid="red-icon-32" />
        <bt:Image size="80" resid="red-icon-80" />
      </Icon>
      <Action xsi:type="ExecuteFunction">
        <FunctionName>getItemClass</FunctionName>
      </Action>
    </Item>
  </Items>
</Control>