Пошаговое руководство. Создание настраиваемой вкладки с помощью конструктора лент
Данное пошаговое руководство демонстрирует создание настраиваемой вкладки на ленте с помощью конструктора лент.Конструктор лент используется для добавления и позиционирования элементов управления на настраиваемой вкладке.
Применение. Сведения этого раздела применяются к проектам уровня документа и уровня приложения для следующих приложений: Excel 2013 и Excel 2010; InfoPath 2013 и InfoPath 2010; Outlook 2013 и Outlook 2010; PowerPoint 2013 и PowerPoint 2010; Project 2013 и Project 2010; Visio 2013 и Visio 2010; Word 2013 и Word 2010. Дополнительные сведения см. в разделе Доступность функций по типам приложений Office и проектов.
В данном пошаговом руководстве рассмотрены следующие задачи:
Создание панелей действий.
Создание настраиваемой вкладки.
Скрытие и отображение панелей действий при помощи кнопок настраиваемой вкладки.
Примечание |
---|
Отображаемые на компьютере имена или расположения некоторых элементов пользовательского интерфейса Visual Studio могут отличаться от указанных в следующих инструкциях.Эти элементы определяются используемым выпуском Visual Studio и его параметрами.Дополнительные сведения см. в разделе Параметры Visual Studio. |
Обязательные компоненты
Ниже приведены компоненты, необходимые для выполнения данного пошагового руководства.
-
Выпуск Visual Studio 2012, включающий инструменты разработчика Microsoft Office. Дополнительные сведения см. в разделе [Настройка компьютера для разработки решений Office](bb398242\(v=vs.110\).md).
- Excel 2010 или Excel 2013.
Для просмотра видеоверсии этого раздела перейдите по ссылке Видео. Создание настраиваемой вкладки с помощью конструктора лент (на английском языке).Для просмотра связанных демонстрационных видеороликов перейдите по ссылке How Do I: Use the Ribbon Designer to Customize the Ribbon in Excel?.
Создание проекта книги Excel
Этапы использования конструктора лент практически идентичны для всех приложений Office.В этом примере используется книга Excel.
Создание проекта книги Excel
Создайте проект книги Excel с именем MyExcelRibbon.Дополнительные сведения см. в разделе Практическое руководство. Создание проектов Office в Visual Studio.
Visual Studio открывает новую книгу в конструкторе и добавляет в проект MyExcelRibbonОбозреватель решений.
Создание панелей действий
Добавьте в проект две настраиваемые панели действий.Позже добавить кнопки, которые показывают и скрывают эти панели действий к пользовательской вкладке.
Создание панелей действий
В меню Проект выберите пункт Добавить новый элемент.
В диалоговом окне Добавление нового элемента выберите ActionsPaneControl, а затем выберите Добавить.
В конструкторе открывается файл ActionsPaneControl1.cs или ActionsPaneControl1.vb.
Добавьте в рабочую область конструктора метку со вкладки Стандартные элементы управления в панели элементов.
В окне Свойства присвойте свойству Text метки label1 значение "Панель действий 1".
Повторите этапы 1–5, чтобы создать вторую панель действий и метку.Присвойте свойству Text второй метки значение "Панель действий 2".
Создание настраиваемой вкладки
Один из принципов проектирования приложений Office состоит в том, что пользователь всегда должен иметь возможность распоряжаться пользовательским интерфейсом приложения Office.Чтобы добавить эту возможность для панелей действий можно добавить кнопки, которые показывают и скрывают каждую панель действий из настраиваемой вкладки на ленте.Чтобы создать настраиваемую вкладку, добавьте в проект элемент Лента (визуальный конструктор).Конструктор помогает добавлять и размещать элементы управления, задавать их свойства и обрабатывать их события.
Создание настраиваемой вкладки
В меню Проект выберите пункт Добавить новый элемент.
В диалоговом окне Добавление нового элемента выберите элемент Лента (визуальный конструктор).
Измените имя новой ленты на MyRibbon и выберите Добавить.
В конструкторе лент откроется файл MyRibbon.cs или MyRibbon.vb; отобразятся вкладка и группа, используемые по умолчанию.
В конструкторе лент выберите вкладку по умолчанию.
В окне Свойства, разверните свойство ControlId, затем присвойте свойству ControlIdType значение Настраиваемый.
Задайте для свойства ControlId значение My Custom Tab.
В конструкторе лент выберите group1.
В окне Свойства присвойте свойству Label значение "Диспетчер панелей действий".
Перетащите кнопку с вкладки Элементы управления ленты Office в панели элементов в группу group1.
Выберите button1.
В окне Свойства присвойте свойству Label значение "Отобразить панель действий 1".
Добавьте вторую кнопку в group1 и присвойте свойству Label значение "Отобразить панель действий 2".
Перетащите элемент управления Выключатель с вкладки Элементы управления ленты Office в панели элементов в группу group1.
Присвойте свойству Label значение "Скрыть панель действий".
Скрытие и отображение панелей действий при помощи кнопок настраиваемой вкладки
Последним этапом является добавление кода, который взаимодействует с пользователем.Добавьте обработчики событий для событий Click обеих кнопок и события Click выключателя.Добавьте код в эти обработчики событий для включения скрывать и отображать панели действий.
Скрытие и отображение панелей действий при помощи кнопок настраиваемой вкладки
В Обозреватель решений открыть контекстное меню для MyRibbon.cs или MyRibbon.vb, а затем выберите Перейти к коду.
Добавьте следующий код в начало класса MyRibbon.Данный код создает два объекта панелей действий.
Dim actionsPane1 As New ActionsPaneControl1() Dim actionsPane2 As New ActionsPaneControl2()
ActionsPaneControl1 actionsPane1 = new ActionsPaneControl1(); ActionsPaneControl2 actionsPane2 = new ActionsPaneControl2();
Замените метод MyRibbon_Load следующим кодом.Данный код добавляет объекты панелей действий в коллекцию панелей действий ActionsPane.Controls и скрывает объекты.Визуальные код C# также вложение делегаты для нескольких событий элементов управления ленты.
Private Sub MyRibbon_Load(ByVal sender As System.Object, ByVal e As Microsoft.Office.Tools.Ribbon.RibbonUIEventArgs) Handles MyBase.Load Globals.ThisWorkbook.ActionsPane.Controls.Add(actionsPane1) Globals.ThisWorkbook.ActionsPane.Controls.Add(actionsPane2) actionsPane1.Hide() actionsPane2.Hide() Globals.ThisWorkbook.Application.DisplayDocumentActionTaskPane = False End Sub
private void MyRibbon_Load(object sender, RibbonUIEventArgs e) { Globals.ThisWorkbook.ActionsPane.Controls.Add(actionsPane1); Globals.ThisWorkbook.ActionsPane.Controls.Add(actionsPane2); actionsPane1.Hide(); actionsPane2.Hide(); Globals.ThisWorkbook.Application.DisplayDocumentActionTaskPane = false; this.button1.Click += new Microsoft.Office.Tools.Ribbon.RibbonControlEventHandler( this.button1_Click); this.button2.Click += new Microsoft.Office.Tools.Ribbon.RibbonControlEventHandler( this.button2_Click); this.toggleButton1.Click += new Microsoft.Office.Tools.Ribbon.RibbonControlEventHandler( this.toggleButton1_Click); }
Добавьте следующие три метода обработчиков событий в класс MyRibbon.Эти методы обрабатывают события Click обеих кнопок и события Click выключателя.Обработчики событий button1 и button2 отображают соответствующие панели действий.Обработчик событий toggleButton1 отображает и скрывает активную панель действий.
Private Sub Button1_Click(ByVal sender As System.Object, _ ByVal e As Microsoft.Office.Tools.Ribbon.RibbonControlEventArgs) _ Handles Button1.Click Globals.ThisWorkbook.Application.DisplayDocumentActionTaskPane = True actionsPane2.Hide() actionsPane1.Show() ToggleButton1.Checked = False End Sub Private Sub Button2_Click(ByVal sender As System.Object, _ ByVal e As Microsoft.Office.Tools.Ribbon.RibbonControlEventArgs) _ Handles Button2.Click Globals.ThisWorkbook.Application.DisplayDocumentActionTaskPane = True actionsPane1.Hide() actionsPane2.Show() ToggleButton1.Checked = False End Sub Private Sub ToggleButton1_Click(ByVal sender As System.Object, _ ByVal e As Microsoft.Office.Tools.Ribbon.RibbonControlEventArgs) _ Handles ToggleButton1.Click If ToggleButton1.Checked Then Globals.ThisWorkbook.Application.DisplayDocumentActionTaskPane = False Else Globals.ThisWorkbook.Application.DisplayDocumentActionTaskPane = True End If End Sub
private void button1_Click(object sender, RibbonControlEventArgs e) { Globals.ThisWorkbook.Application.DisplayDocumentActionTaskPane = true; actionsPane2.Hide(); actionsPane1.Show(); toggleButton1.Checked = false; } private void button2_Click(object sender, RibbonControlEventArgs e) { Globals.ThisWorkbook.Application.DisplayDocumentActionTaskPane = true; actionsPane1.Hide(); actionsPane2.Show(); toggleButton1.Checked = false; } private void toggleButton1_Click(object sender, RibbonControlEventArgs e) { if (toggleButton1.Checked == true) { Globals.ThisWorkbook.Application.DisplayDocumentActionTaskPane = false; } else { Globals.ThisWorkbook.Application.DisplayDocumentActionTaskPane = true; } }
Тестирование настраиваемой вкладки
При запуске проекта запускается Excel и вкладка Моя настраиваемой вкладки отображаются на ленте.Выберите кнопки на Моя настраиваемой вкладки чтобы отображать и скрывать панели действий.
Тестирование настраиваемой вкладки
Нажмите клавишу F5 для запуска проекта.
Выберите вкладку Моя настраиваемой вкладки.
В группе Диспетчер области настраиваемых действий выберите Отобразите панель действий 1.
Отобразится панель действий с надписью Панель действий 1.
Выберите Отобразите панель действий 2.
Отобразится панель действий с надписью Панель действий 2.
Выберите Скрывать панели действий.
Панели действий будут скрыты.
Следующие действия
Дополнительные сведения о настройке пользовательского интерфейса Office см. в следующих разделах:
Добавление пользовательского интерфейса на основе контекста к настройкам уровня документа.Дополнительные сведения см. в разделе Общие сведения о панели действий.
Расширение стандартной или пользовательской формы Microsoft Office Outlook. Дополнительные сведения см. в разделе Пошаговое руководство. Разработка области формы Outlook.
См. также
Задачи
Практическое руководство. Работа с настройкой ленты
Практическое руководство. Изменение положения вкладки на ленте
Практическое руководство. Настройка встроенной вкладки
Практическое руководство. Добавление элементов управления в представление Backstage
Основные понятия
Доступ к ленте во время выполнения
Общие сведения об объектной модели ленты