Compartilhar via


Control element of type Menu

Um menu define uma lista de opções. Cada item de menu executa uma função ou mostra um painel de tarefas.

Observação

Este artigo pressupõe estar familiarizado com o artigo de referência de Controlo básico que contém informações importantes sobre os atributos do elemento.

O controlo de menu define:

  • Um controlo de menu ao nível da raiz.
  • Uma lista de itens de menu.

Quando utilizado com o ponto de extensão PrimaryCommandSurface, o item de menu raiz é apresentado como um botão no friso. Quando o botão está selecionado, o menu é apresentado como uma lista pendente. Não há suporte para submenus.

Quando utilizado com o ponto de extensão ContextMenu, é apresentado um item de menu de raiz no menu de contexto. Quando o item de raiz está selecionado, os itens de menu são apresentados como um submenu. Nenhum dos itens pode ser um submenu, porque só é suportado um nível de submenus.

Elementos filho

Elemento Obrigatório Descrição
Label Sim O texto do menu.
Supertip Sim A supertipa deste menu.

Importante: as superscrições só são suportadas em clientes de ambiente de trabalho do Office.
Icon Sim Uma imagem para o menu.
<Itens> Sim Uma coleção de itens a apresentar no menu. Contém o <elemento Item> para cada item.
OverriddenByRibbonApi Não Especifica se o menu deve aparecer nas combinações de aplicações e plataformas que suportam separadores contextuais personalizados. Se utilizado, tem de ser o primeiro elemento subordinado.

Rótulo

Especifica o texto para o nome do menu através do seu único atributo, residir, que não pode ter mais de 32 carateres e tem de ser definido para o valor do atributo id de um <elemento String> no <subordinado ShortStrings> do elemento Resources .

Tipo de suplemento: Painel de tarefas, Correio

Válido apenas nestes esquemas VersionOverrides:

  • Painel de tarefas 1.0
  • Email 1.0
  • Email 1.1

Para obter mais informações, veja Substituições de versões no manifesto apenas do suplemento.

Associados a estes conjuntos de requisitos:

Exemplos

No exemplo seguinte, o menu tem dois itens. O primeiro apresenta um painel de tarefas. A segunda executa uma função. O menu foi configurado para não estar visível quando o suplemento está em execução numa plataforma que suporta separadores contextuais. Para obter mais informações, veja Implementar uma experiência de IU alternativa quando os separadores contextuais personalizados não são suportados.

<Control xsi:type="Menu" id="Contoso.TestMenu2">
  <OverriddenByRibbonApi>true</OverriddenByRibbonApi>
  <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>
  <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>

No exemplo seguinte, o segundo item do menu está configurado para não ser visível quando o suplemento está em execução numa plataforma que suporta separadores contextuais. Para obter mais informações, veja Implementar uma experiência de IU alternativa quando os separadores contextuais personalizados não são suportados.

<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>