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) см. в разделе Пошаговое руководство. Обновление элементов управления на ленте во время выполнения.
Чтобы запустить этот пример кода, необходимо сначала выполнить следующие действия:
Добавление элемента ленты (visual Designer) в проект Office.
Добавьте группу на настраиваемую вкладку.
Добавьте меню в группу.
Задайте для свойства (Name) меню значение
CustomerMenu
.Присвойте свойству Label меню значение Клиенты.
Присвойте свойству 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 |
Происходит при загрузке элементов управления или вложенных меню в меню во время выполнения. |