RibbonMenu - интерфейс
Представляет меню на вкладке ленты или в меню Microsoft Office.
Пространство имен: Microsoft.Office.Tools.Ribbon
Сборка: Microsoft.Office.Tools.Common (в Microsoft.Office.Tools.Common.dll)
Синтаксис
'Декларация
<GuidAttribute("59dc7f42-aca2-484a-9622-1ee34a6cfd7d")> _
Public Interface RibbonMenu _
Inherits RibbonControl, RibbonComponent, IComponent, IDisposable
[GuidAttribute("59dc7f42-aca2-484a-9622-1ee34a6cfd7d")]
public interface RibbonMenu : RibbonControl,
RibbonComponent, IComponent, IDisposable
Тип RibbonMenu предоставляет следующие члены.
Свойства
Имя | Описание | |
---|---|---|
![]() |
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 | Возврат или установка значения, определяющего видимость метки меню. |
![]() |
Site | Возвращает или задает объект ISite, связанный с объектом IComponent. (Унаследовано от IComponent.) |
![]() |
SuperTip | Возврат или установка текста многострочной подсказки, отображаемой при наведении указателя мыши на меню. |
![]() |
Tag | Возврат или установка данных приложения, связанных с этим объектом RibbonComponent. (Унаследовано от RibbonComponent.) |
![]() |
Title | Возврат или установка заголовка, который отображается при развертывании меню, добавляемого в меню Microsoft Office. |
![]() |
Visible | Возврат или установка значения, определяющего видимость объекта RibbonControl. (Унаследовано от RibbonControl.) |
В начало страницы
Методы
Имя | Описание | |
---|---|---|
![]() |
Dispose | Выполняет определяемые приложением задачи, связанные с высвобождением или сбросом неуправляемых ресурсов. (Унаследовано от IDisposable.) |
![]() |
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.) |
В начало страницы
События
Имя | Описание | |
---|---|---|
![]() |
Disposed | Представляет метод, обрабатывающий событие Disposed компонента. (Унаследовано от IComponent.) |
![]() |
ItemsLoading | Вызывается при загрузке в меню элементов управления или вложенных меню во время выполнения. |
В начало страницы
Заметки
Visual Studio создает объект RibbonMenu при перетаскивании элемента управления Меню из вкладки Элементы управления ленты Office в конструктор ленты Панель инструментов.
Можно создать 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 для среды выполнения Office.
Использование
В настоящей документации описывается версия этого типа, которая используется в проектах Office, предназначенных для платформ .NET Framework 4 и .NET Framework 4.5. В проектах, предназначенных для платформы .NET Framework 3.5, этот тип может содержать другие члены, а примеры кода, приведенные для этого типа, могут не работать. Документацию о данном типе в проектах, предназначенных для платформы .NET Framework 3.5, см. в следующем справочном разделе документации Visual Studio 2008: https://go.microsoft.com/fwlink/?LinkId=160658.
Примеры
В следующем примере демонстрируется добавление подменю к существующему меню и его заполнение во время выполнения.
Более подробный пример обновления элементов управления во время выполнения и извлечения сведений из демонстрационной базы данных AdventureWorks с использованием LINQ (Language-Integrated Query — запросы, интегрированные в язык программирования) см. в разделе Пошаговое руководство. Обновление элементов управления на ленте во время выполнения.
Перед выполнением этого примера выполните следующие действия:
Добавьте элемент Лента (визуальный конструктор) в проект Office.
Добавьте группу на пользовательскую вкладку.
Добавьте меню в группу.
Установите для свойства (Name) меню значение CustomerMenu.
Установите для свойства Label меню значение Customers.
Установите для свойства Dynamic меню значение true.
Это дает возможность добавлять и удалять элементы управления в меню во время выполнения после загрузки ленты в приложение Office.
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
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);
}
См. также
Ссылки
Microsoft.Office.Tools.Ribbon - пространство имен