Поделиться через


RibbonMenu Интерфейс

Определение

Представляет меню на вкладке ленты или в меню 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
Атрибуты
Реализации

Примеры

В следующем примере показано, как добавить и заполнить подменю в существующее меню во время выполнения.

Более подробный пример обновления элементов управления во время выполнения и получения данных из образца базы данных AdventureWorks с помощью запросов Language-Integrated (LINQ) см. в разделе Пошаговое руководство. Обновление элементов управления на ленте во время выполнения.

Чтобы запустить этот пример кода, необходимо сначала выполнить следующие действия:

  1. Добавление элемента ленты (visual Designer) в проект Office.

  2. Добавьте группу на настраиваемую вкладку.

  3. Добавьте меню в группу.

  4. Задайте для свойства (Name) меню значение CustomerMenu.

  5. Присвойте свойству Label меню значение Клиенты.

  6. Присвойте свойству Dynamic меню значение true.

    Это позволит добавлять и удалять элементы управления в меню во время выполнения после загрузки ленты в приложение 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

Комментарии

Visual Studio создает RibbonMenu объект при перетаскивании элемента управления Меню с вкладки Элементы управления ленты Officeпанели элементов на Designer ленты.

Можно создать RibbonMenu во время выполнения с помощью CreateRibbonMenu метода RibbonFactory объекта .

Существует два способа доступа к объекту RibbonFactory:

  • С помощью свойства Factory класса ленты. Используйте этот подход в коде в классе ленты.

  • С помощью метода Globals.Factory.GetRibbonFactory. Используйте этот подход в коде вне класса ленты.

Общие задачи

В следующей таблице перечислены элементы, которые используются для распространенных задач. Все эти задачи можно выполнять во время разработки. Некоторые из этих задач можно выполнять во время выполнения только перед загрузкой ленты в приложение Office или перед добавлением элемента управления в динамическое меню во время выполнения. Дополнительные сведения см. в разделе Общие сведения об объектной модели ленты.

Задача Член
Отображение изображения в меню. Image Используйте свойство или ImageName .

Вы также можете повторно использовать образы, которые отображаются во встроенных элементах управления ленты. Для этого задайте OfficeImageId идентификатор встроенного образа Microsoft Office, который будет отображаться в качестве значка меню.
Изменение размера меню. Присвойте ControlSize свойству нужное значение. Например, для большого меню присвойте ему значение Microsoft.Office.Core.RibbonControlSize.RibbonControlSizeLarge.
Изменение размера элементов в меню. Присвойте ItemSize свойству нужное значение. Например, чтобы отобразить более крупные элементы, задайте для него значение Microsoft.Office.Core.RibbonControlSize.RibbonControlSizeLarge.
Включите изменения в меню во время выполнения (например, чтобы включить добавление элементов управления в меню во время выполнения). Задайте свойству Dynamic значение true.
Доступ к элементам управления в меню, добавление элементов управления в меню или удаление элементов управления из меню. Используйте свойство Items.
Добавьте меню в меню Microsoft Office, группу или другой элемент управления, который может содержать меню. Добавьте RibbonMenu в Items свойство меню, группы или элемента управления Microsoft Office.

Примечание

Данный интерфейс реализуется набором средств Visual Studio Tools for Office (среда выполнения). Он не предназначен для реализации в пользовательском коде. Дополнительные сведения см. в разделе Visual Studio Tools for Office Runtime Overview.

Использование

В настоящей документации описывается версия этого типа, которая используется в проектах Office, предназначенных для платформы .NET Framework 4 или более поздних ее версий. В проектах, предназначенных для платформы .NET Framework 3.5, этот тип может содержать другие члены, а примеры кода, приведенные для этого типа, могут не работать. Документацию об этом типе в проектах, предназначенных для платформы .NET Framework 3.5, см. в следующем справочном разделе документации Visual Studio 2008: http://go.microsoft.com/fwlink/?LinkId=160658.

Свойства

ControlSize

Получает или задает размер меню.

Description

Получает или задает текст, отображаемый для текущего меню.

Dynamic

Получает или задает значение, определяющее возможность изменения меню во время выполнения.

Enabled

Получает или задает значение, указывающее, включен ли этот объект RibbonControl.

(Унаследовано от RibbonControl)
Id

Получает строку, используемую Microsoft Office для идентификации этого объекта RibbonControl.

(Унаследовано от RibbonControl)
Image

Получает или задает изображение, отображаемое для меню.

ImageName

Получает или задает имя, определяющее изображение меню в обработчике событий LoadImage.

Items

Получает коллекцию элементов управления, которые содержатся в меню.

ItemSize

Получает или задает размер элементов управления для меню.

KeyTip

Получает или задает клавишу доступа к меню.

Label

Возврат или установка текста, отображаемого в меню.

Name

Получает или задает имя данного объекта RibbonComponent.

(Унаследовано от RibbonComponent)
OfficeImageId

Получает или задает изображение, отображаемое для меню при использовании встроенного значка Microsoft Office.

Parent

Получает объект RibbonComponent, представляющий родительский объект этого объекта RibbonComponent.

(Унаследовано от RibbonComponent)
Position

Возврат или установка положения меню в меню Microsoft Office.

Ribbon

Получает объект верхнего уровня Ribbon, который содержит иерархию элементов управления.

(Унаследовано от RibbonComponent)
RibbonUI

Получает экземпляр IRibbonUI, предоставляемый приложением Microsoft Office коду расширяемости ленты.

(Унаследовано от RibbonComponent)
ScreenTip

Получает или задает текст подсказки, отображаемой при наведении указателя мыши на меню.

ShowImage

Возврат или установка значения, которое определяет видимость изображения, связанного с меню.

ShowLabel

Получает или задает значение, определяющее видимость метки для меню.

SuperTip

Получает или задает текст многострочной подсказки, отображаемой при наведении указателя мыши на меню.

Tag

Получает или задает данные приложения, связанные с этим объектом RibbonComponent.

(Унаследовано от RibbonComponent)
Title

Получает или задает заголовок, который отображается при развертывании пользователем меню, добавленного в меню Microsoft Office.

Visible

Получает или задает значение, указывающее, видим ли этот объект RibbonControl.

(Унаследовано от RibbonControl)

Методы

PerformDynamicLayout()

Вызывает метод Microsoft.Office.Core.IRibbonUI.InvalidateControl родительского элемента управления, если для объекта RibbonComponent существует динамический родительский элемент, например динамическое меню, и размещение не приостановлено.

(Унаследовано от RibbonComponent)
PerformLayout()

Вызывает метод Microsoft.Office.Core.IRibbonUI.InvalidateControl, если у RibbonComponent есть родительский элемент и макет не был приостановлен.

(Унаследовано от RibbonComponent)
ResumeLayout()

Отменяет результат вызова метода SuspendLayout().

(Унаследовано от RibbonComponent)
ResumeLayout(Boolean)

Отменяет результат вызова метода SuspendLayout().

(Унаследовано от RibbonComponent)
SuspendLayout()

Запрещает обновление состояния элементов управления ленты в приложении Microsoft Office.

(Унаследовано от RibbonComponent)

События

ItemsLoading

Происходит при загрузке элементов управления или вложенных меню в меню во время выполнения.

Применяется к