Compartilhar via


RibbonMenu Interface

Definição

Representa um menu em uma guia de Faixa de Opções ou no menu do Microsoft Office.

public interface class RibbonMenu : IDisposable, Microsoft::Office::Tools::Ribbon::RibbonControl, System::ComponentModel::IComponent
[System.Runtime.InteropServices.Guid("59dc7f42-aca2-484a-9622-1ee34a6cfd7d")]
public interface RibbonMenu : IDisposable, Microsoft.Office.Tools.Ribbon.RibbonControl, System.ComponentModel.IComponent
[<System.Runtime.InteropServices.Guid("59dc7f42-aca2-484a-9622-1ee34a6cfd7d")>]
type RibbonMenu = interface
    interface RibbonControl
    interface RibbonComponent
    interface IComponent
    interface IDisposable
Public Interface RibbonMenu
Implements IComponent, IDisposable, RibbonControl
Atributos
Implementações

Exemplos

O exemplo a seguir demonstra como adicionar e preencher um submenu em um menu existente em tempo de execução.

Para obter um exemplo mais avançado que atualiza os controles em tempo de execução e envolve a obtenção de dados do banco de dados de exemplo AdventureWorks usando Language-Integrated Consultas (LINQ), consulte Passo a passo: atualizando os controles em uma faixa de opções em tempo de execução.

Para executar esse exemplo de código, você deve primeiro executar as seguintes etapas:

  1. Adicione um item da Faixa de Opções (Visual Designer) a um projeto do Office.

  2. Adicione um grupo à guia personalizada.

  3. Adicione um menu ao grupo.

  4. Defina a propriedade (Name) do menu como CustomerMenu.

  5. Defina a propriedade Label do menu como Clientes.

  6. Defina a propriedade Dynamic do menu como true.

    Isso permite adicionar e remover controles no menu em tempo de execução depois que a Faixa de Opções é carregada no aplicativo do Office.

private void PopulateCustomerMenu()
{
    // Add two sub-menus to EmployeeMenu and populate each sub-menu
    // First sub-menu
    RibbonMenu subMenu1 = this.Factory.CreateRibbonMenu();
    subMenu1.Dynamic = true;
    subMenu1.Label = "A - M";
    subMenu1.Items.Add(this.Factory.CreateRibbonToggleButton());
    ((RibbonToggleButton)subMenu1.Items.Last()).Label = "Hall, Don";
    subMenu1.Items.Add(this.Factory.CreateRibbonToggleButton());
    ((RibbonToggleButton)subMenu1.Items.Last()).Label = "Valdez, Rachel";
    CustomerMenu.Items.Add(subMenu1);

    // Second sub-menu
    RibbonMenu subMenu2 = this.Factory.CreateRibbonMenu();
    subMenu2.Dynamic = true;
    subMenu2.Label = "N - Z";
    subMenu2.Items.Add(this.Factory.CreateRibbonToggleButton());
    ((RibbonToggleButton)subMenu2.Items.Last()).Label = "Robinson, Alex";
    CustomerMenu.Items.Add(subMenu2);
}
Private Sub PopulateCustomerMenu()
    ' Add two sub-menus to EmployeeMenu and populate each sub-menu
    ' First sub-menu
    Dim subMenu1 As RibbonMenu = Me.Factory.CreateRibbonMenu()
    subMenu1.Dynamic = True
    subMenu1.Label = "A - M"
    subMenu1.Items.Add(Me.Factory.CreateRibbonToggleButton())
    CType(subMenu1.Items.Last(), RibbonToggleButton).Label = "Hall, Don"
    subMenu1.Items.Add(Me.Factory.CreateRibbonToggleButton())
    CType(subMenu1.Items.Last(), RibbonToggleButton).Label = "Valdez, Rachel"
    CustomerMenu.Items.Add(subMenu1)

    ' Second sub-menu
    Dim subMenu2 As RibbonMenu = Me.Factory.CreateRibbonMenu()
    subMenu2.Dynamic = True
    subMenu2.Label = "N - Z"
    subMenu2.Items.Add(Me.Factory.CreateRibbonToggleButton())
    CType(subMenu2.Items.Last(), RibbonToggleButton).Label = "Robinson, Alex"
    CustomerMenu.Items.Add(subMenu2)

End Sub

Comentários

O Visual Studio cria um RibbonMenu objeto quando você arrasta um controle Menu da guia Controles da Faixa de Opções do Office da Caixa de Ferramentas para a faixa de opções Designer.

Você pode criar um RibbonMenu em tempo de execução usando o CreateRibbonMenu método do RibbonFactory objeto .

Existem duas maneiras de acessar o objeto RibbonFactory:

  • Usando a propriedade Factory da classe Ribbon. Use essa abordagem no código na classe Ribbon.

  • Usando o método Globals.Factory.GetRibbonFactory. Use essa abordagem no código fora da classe Ribbon.

Tarefas comuns

A tabela a seguir lista os membros que são úteis para tarefas comuns. Todas essas tarefas podem ser executadas em tempo de design. Algumas dessas tarefas só podem ser executadas em tempo de execução antes que a Faixa de Opções seja carregada no aplicativo do Office ou antes que o controle seja adicionado a um menu dinâmico em tempo de execução. Para obter mais informações, consulte Visão geral do modelo de objeto da faixa de opções.

Tarefa Membro
Exibir uma imagem no menu. Use a Image propriedade ou ImageName .

Você também pode reutilizar imagens que aparecem em controles internos da Faixa de Opções. Para fazer isso, defina OfficeImageId como a ID de uma imagem interna do Microsoft Office que você deseja exibir como o ícone do menu.
Altere o tamanho do menu. Defina a ControlSize propriedade como o valor desejado. Por exemplo, para um menu grande, defina-o Microsoft.Office.Core.RibbonControlSize.RibbonControlSizeLargecomo .
Altere o tamanho dos itens no menu. Defina a ItemSize propriedade como o valor desejado. Por exemplo, para exibir itens maiores, defina-o Microsoft.Office.Core.RibbonControlSize.RibbonControlSizeLargecomo .
Habilite as alterações no menu em tempo de execução (por exemplo, para permitir que os controles sejam adicionados ao menu em tempo de execução). Defina a propriedade Dynamic como true.
Acesse os controles no menu, adicione controles ao menu ou remova controles do menu. Use a propriedade Items.
Adicione um menu ao Menu do Microsoft Office, a um grupo ou a outro controle que possa conter menus. Adicione um RibbonMenu à Items propriedade do Menu, grupo ou controle do Microsoft Office.

Observação

Essa interface é implementada pelo Visual Studio Tools for Office Runtime. Ela não se destina a ser implementada em seu código. Para obter mais informações, consulte Visão geral do Visual Studio Tools para Office Runtime.

Uso

Essa documentação descreve a versão desse tipo que é usada nos projetos do Office direcionados ao .NET Framework 4 ou posterior. Em projetos direcionados ao .NET Framework 3.5, esse tipo pode ter membros diferentes e os exemplos de código fornecidos para este tipo talvez não funcionem. Conheça a documentação sobre este tipo em projetos direcionados ao .NET Framework 3.5 na seguinte seção de referência na documentação do Visual Studio 2008: http://go.microsoft.com/fwlink/?LinkId=160658.

Propriedades

ControlSize

Obtém ou define o tamanho do menu.

Description

Obtém ou define o texto que aparece no menu atual.

Dynamic

Obtém ou define um valor que indica se o menu pode ser modificado no momento da execução.

Enabled

Obtém ou define um valor que indica se o RibbonControl está habilitado.

(Herdado de RibbonControl)
Id

Obtém uma cadeia de caracteres que o Microsoft Office usa para identificar esse RibbonControl objeto.

(Herdado de RibbonControl)
Image

Obtém ou define a imagem exibida no menu.

ImageName

Obtém ou define o nome que você pode usar no manipulador de eventos LoadImage para identificar uma imagem para o menu.

Items

Obtém a coleção de controles que estão no menu.

ItemSize

Obtém ou define o tamanho dos controles no menu.

KeyTip

Obtém ou define a tecla de acesso do teclado do menu.

Label

Obtém ou define o texto que é exibido pelo menu.

Name

Obtém ou define o nome deste RibbonComponent.

(Herdado de RibbonComponent)
OfficeImageId

Obterá ou definirá a imagem a ser exibida no menu, se você quiser usar um ícone interno do Microsoft Office.

Parent

Obtém um RibbonComponent que representa o pai deste RibbonComponent.

(Herdado de RibbonComponent)
Position

Obterá ou definirá a posição do menu, se o menu estiver no Menu do Microsoft Office.

Ribbon

Obtém o objeto Ribbon de nível superior que contém a hierarquia de controle.

(Herdado de RibbonComponent)
RibbonUI

Obtém a instância IRibbonUI fornecida pelo aplicativo do Microsoft Office para o código de extensibilidade da Faixa de Opções.

(Herdado de RibbonComponent)
ScreenTip

Obtém ou define o texto da dica exibido quando o usuário move o ponteiro sobre o menu.

ShowImage

Obtém ou define um valor que indica se a imagem que está associada ao menu estará visível.

ShowLabel

Obtém ou define um valor que indica se o rótulo do menu está visível.

SuperTip

Obtém ou define o texto da dica multilinha que é exibido quando o usuário move o ponteiro sobre o menu.

Tag

Obtém ou define dados específicos do aplicativo associados a este RibbonComponent.

(Herdado de RibbonComponent)
Title

Obtém ou define o título exibido quando o usuário expande um menu que é adicionado ao Menu do Microsoft Office.

Visible

Obtém ou define um valor que indica se o RibbonControl está visível.

(Herdado de RibbonControl)

Métodos

PerformDynamicLayout()

Chamará o método Microsoft.Office.Core.IRibbonUI.InvalidateControl do controle pai se o RibbonComponent tiver um pai dinâmico, como um menu dinâmico, e o layout não for suspenso.

(Herdado de RibbonComponent)
PerformLayout()

Chamará Microsoft.Office.Core.IRibbonUI.InvalidateControl se o RibbonComponent tiver um pai e o layout não estiver suspenso.

(Herdado de RibbonComponent)
ResumeLayout()

Inverte o efeito do método SuspendLayout().

(Herdado de RibbonComponent)
ResumeLayout(Boolean)

Inverte o efeito do método SuspendLayout().

(Herdado de RibbonComponent)
SuspendLayout()

Impede que o aplicativo Microsoft Office atualize o estado dos controles na Faixa de Opções.

(Herdado de RibbonComponent)

Eventos

ItemsLoading

Ocorre quando controles ou menus aninhados são carregados no menu atual em tempo de execução.

Aplica-se a