Добавление панели инструментов в окно инструментов
Область применения:Visual Studio Visual Studio для Mac
Visual Studio Code ![]()
В этом пошаговом руководстве показано, как добавить панель инструментов в окно инструментов.
Панель инструментов — это горизонтальная или вертикальная полоса, содержащая кнопки, привязанные к командам. Длина панели инструментов в окне инструментов всегда совпадает с шириной или высотой окна инструмента в зависимости от того, где закреплена панель инструментов.
В отличие от панелей инструментов в интегрированной среде разработки, панель инструментов в окне инструментов должна быть закреплена и не может быть перемещена или настроена. Если VSPackage написан в неуправляемом коде, панель инструментов можно закрепить на любом краю.
Дополнительные сведения о добавлении панели инструментов см. в разделе «Добавление панели инструментов».
Необходимые компоненты
Начиная с Visual Studio 2015, пакет SDK Visual Studio не устанавливается из центра загрузки. Она включена в качестве необязательной функции в настройке Visual Studio. Пакет SDK для VS можно установить и позже. Дополнительные сведения: Установка пакета SDK для Visual Studio.
Создание панели инструментов для окна инструментов
- Создайте проект VSIX с именем TWToolbar команды меню с именем TWTestCommand и окном инструментов с именемTestToolWindow. Дополнительные сведения см. в разделе «Создание расширения с помощью команды меню» и создание расширения с помощью окна инструментов. Перед добавлением шаблона окна инструментов необходимо добавить шаблон элемента команды.
- В TWTestCommandPackage.vsct найдите раздел «Символы». В узле GuidSymbol с именем guidTWTestCommandPackageCmdSet объявите панель инструментов и группу инструментов, как показано ниже.
Добавление панели инструментов в окно инструментов
- В TWTestCommandPackageGuids.cs добавьте следующие строки.
public const string guidTWTestCommandPackageCmdSet = "00000000-0000-0000-0000-0000"; // get the GUID from the .vsct file public const int TWToolbar = 0x1000;
using System.ComponentModel.Design;
this.ToolBar = new CommandID(new Guid(TWTestCommandPackageGuids.guidTWTestCommandPackageCmdSet), TWTestCommandPackageGuids.TWToolbar);
Проверка панели инструментов в окне инструментов
- Выполните сборку решения и запустите отладку. Должен появиться экспериментальный экземпляр Visual Studio.
- В меню «Вид» или «Другие окна» щелкните «Тестовый инструментWindow«, чтобы отобразить окно инструмента. Вы увидите панель инструментов (она выглядит как значок по умолчанию) в левом верхнем углу окна инструментов, чуть ниже заголовка.
- На панели инструментов щелкните значок, чтобы отобразить сообщение TWTestCommandPackage Inside TWToolbar.TWTestCommand.MenuItemCallback().
См. также
Получение средств, необходимых для записи расширений Visual Studio
Область применения:
Visual Studio Visual Studio для Mac
Visual Studio Code ![]()
Для записи расширений необходимо установить рабочую нагрузку расширяемости. Это технически все, что вам нужно, но этот набор документации использует расширение на основе сообщества под названием Extensibility Essentials. Каждая версия Visual Studio имеет собственную версию: Расширяемость Essentials 2019 или Расширяемость Essentials 2022.
В следующем видео представлены необходимые инструменты.
Установка рабочей нагрузки расширяемости
Чтобы открыть установщик Visual Studio, выберите «Сервис«, а затем нажмите кнопку «Получить инструменты и компоненты». . Затем установите рабочую нагрузку разработки расширений Visual Studio.

Установка расширяемости Essentials
Чтобы установить расширяемость Essentials, выберите «Расширения», выберите «Управление расширениями«, а затем найдите расширяемость.
- Для Visual Studio 2019 install Extensibility Essentials 2019.
- Для Visual Studio 2022 установите расширяемость Essentials 2022.

Это так, теперь вы готовы начать разработку первого расширения.
Добавление панели инструментов
Область применения:
Visual Studio Visual Studio для Mac
Visual Studio Code ![]()
В этом пошаговом руководстве показано, как добавить панель инструментов в интегрированную среду разработки Visual Studio.
Панель инструментов — это горизонтальная или вертикальная полоса, содержащая кнопки, привязанные к командам. В зависимости от его реализации панель инструментов в интегрированной среде разработки может быть перепозиционирована, закреплена на любой стороне основного окна интегрированной среды разработки или выполнена, чтобы оставаться перед другими окнами.
Кроме того, пользователи могут добавлять команды на панель инструментов или удалять их из него с помощью диалогового окна «Настройка «. Как правило, панели инструментов в VSPackage настраиваются пользователем. Интегрированная среда разработки обрабатывает все настройки, а VSPackage отвечает на команды. VSPackage не должен знать, где находится команда физически.
Дополнительные сведения о меню см. в разделе «Команды», «Меню» и «Панели инструментов».
Создание расширения с помощью панели инструментов
Создайте проект VSIX с именем IDEToolbar . Добавьте шаблон элемента команды меню с именем ToolbarTestCommand. Сведения о том, как это сделать, см. в разделе «Создание расширения» с помощью команды меню.
Создание панели инструментов для интегрированной среды разработки
- В Панели инструментовTestCommandPackage.vsct найдите раздел «Символы». В элементе GuidSymbol с именем guidToolbarTestCommandPackageCmdSet добавьте объявления для панели инструментов и группы инструментов, как показано ниже.
Добавление окна инструментов
Область применения:
Visual Studio Visual Studio для Mac
Visual Studio Code ![]()
В этом пошаговом руководстве вы узнаете, как создать окно инструментов и интегрировать его в Visual Studio следующим образом:
- Добавьте элемент управления в окно инструментов.
- Добавьте панель инструментов в окно инструментов.
- Добавьте команду на панель инструментов.
- Реализуйте команды.
- Задайте положение по умолчанию для окна инструментов.
Необходимые компоненты
Пакет SDK Для Visual Studio включен в качестве необязательной функции в настройке Visual Studio. Дополнительные сведения см. в разделе «Установка пакета SDK для Visual Studio».
Создание окна инструментов
- Создайте проект с именем FirstToolWin с помощью шаблона VSIX и добавьте шаблон пользовательского элемента окна инструментов с именем FirstToolWindow.
Примечание. Дополнительные сведения о создании расширения с помощью окна инструментов см. в разделе «Создание расширения с помощью окна инструментов».
Добавление элемента управления в окно инструментов
- Удалите элемент управления по умолчанию. Откройте FirstToolWindowControl.xaml и удалите кнопку Click Me!
- На панели элементов разверните раздел «Все элементы управления WPF» и перетащите элемент управления Media в форму FirstToolWindowControl. Выберите элемент управления и в окне «Свойства » назовите этот элемент mediaElement1.
Добавление панели инструментов в окно инструментов
Добавив панель инструментов следующим образом, вы гарантируете, что его градиенты и цвета согласованы с остальной частью интегрированной среды разработки.
- В Обозреватель решений откройте FirstToolWindowPackage.vsct. VSCT-файл определяет элементы графического пользовательского интерфейса (GUI) в окне средства с помощью XML.
- В разделе найдите узел, атрибут которого name является guidFirstToolWindowPackageCmdSet . Добавьте следующие два элемента в список элементов в этом узле, чтобы определить панель инструментов и группу инструментов.
Добавление команды на панель инструментов
Добавьте команду на панель инструментов, которая отображается в виде кнопки.
-
В разделе объявите следующие элементы IDSymbol сразу после объявления панели инструментов и группы панелей инструментов.
public const string guidFirstToolWindowPackageCmdSet = "00000000-0000-0000-0000-0000"; // get the GUID from the .vsct file public const uint cmdidWindowsMedia = 0x100; public const int cmdidWindowsMediaOpen = 0x132; public const int ToolbarID = 0x1000;
Добавление свойства MediaPlayer в FirstToolWindowControl
В обработчиках событий для элементов управления панели инструментов код должен иметь доступ к элементу управления Медиаплеер, который является дочерним элементом класса FirstToolWindowControl.
В Обозреватель решений щелкните правой кнопкой мыши FirstToolWindowControl.xaml, щелкните View Code и добавьте следующий код в класс FirstToolWindowControl.
public System.Windows.Controls.MediaElement MediaPlayer < get < return mediaElement1; >>
Создание экземпляра окна инструментов и панели инструментов
Добавьте панель инструментов и команду меню, которая вызывает диалоговое окно «Открыть файл файла» и воспроизводит выбранный файл мультимедиа.
-
Откройте FirstToolWindow.cs и добавьте следующие using директивы:
using System.ComponentModel.Design; using System.Windows.Forms; using Microsoft.VisualStudio.Shell.Interop;
public FirstToolWindowControl control;
control = new FirstToolWindowControl(); base.Content = control;
this.ToolBar = new CommandID(new Guid(FirstToolWindowCommand.guidFirstToolWindowPackageCmdSet), FirstToolWindowCommand.ToolbarID); this.ToolBarLocation = (int)VSTWT_LOCATION.VSTWT_TOP;
public FirstToolWindow() : base(null)
using System.Windows.Forms;
// Create the handles for the toolbar command. var mcs = this.ServiceProvider.GetService(typeof(IMenuCommandService)) as OleMenuCommandService; var toolbarbtnCmdID = new CommandID(new Guid(FirstToolWindowCommand.guidFirstToolWindowPackageCmdSet), FirstToolWindowCommand.cmdidWindowsMediaOpen); var menuItem = new MenuCommand(new EventHandler( ButtonHandler), toolbarbtnCmdID); mcs.AddCommand(menuItem);
Реализация команды меню в окне инструментов
- В классе FirstToolWindowCommand добавьте метод ButtonHandler, вызывающий диалоговое окно Open File . При выборе файла он воспроизводит файл мультимедиа.
- В классе FirstToolWindowCommand добавьте частную ссылку на окно FirstToolWindow, которое создается в методе FindToolWindow().
private FirstToolWindow window;
private void ShowToolWindow(object sender, EventArgs e) < window = (FirstToolWindow) this.package.FindToolWindow(typeof(FirstToolWindow), 0, true); if ((null == window) || (null == window.Frame)) < throw new NotSupportedException("Cannot create tool window"); >IVsWindowFrame windowFrame = (IVsWindowFrame)window.Frame; Microsoft.VisualStudio.ErrorHandler.ThrowOnFailure(windowFrame.Show()); var mcs = this.ServiceProvider.GetService(typeof(IMenuCommandService)) as OleMenuCommandService; var toolbarbtnCmdID = new CommandID(new Guid(FirstToolWindowCommandguidFirstToolWindowPackageCmdSet), FirstToolWindowCommand.cmdidWindowsMediaOpen); var menuItem = new MenuCommand(new EventHandler( ButtonHandler), toolbarbtnCmdID); mcs.AddCommand(menuItem); >
private void ButtonHandler(object sender, EventArgs arguments) < OpenFileDialog openFileDialog = new OpenFileDialog(); DialogResult result = openFileDialog.ShowDialog(); if (result == DialogResult.OK) < window.control.MediaPlayer.Source = new System.Uri(openFileDialog.FileName); >>
Установка позиции по умолчанию для окна инструментов
Затем укажите расположение по умолчанию в интегрированной среде разработки для окна инструментов. Сведения о конфигурации окна инструментов приведены в файле FirstToolWindowPackage.cs .
-
В FirstToolWindowPackage.cs найдите ProvideToolWindowAttribute атрибут в FirstToolWindowPackage классе, который передает тип FirstToolWindow конструктору. Чтобы указать позицию по умолчанию, необходимо добавить дополнительные параметры в следующий пример конструктора.
[ProvideToolWindow(typeof(FirstToolWindow), Style = Microsoft.VisualStudio.Shell.VsDockStyle.Tabbed, Window = "3ae79031-e1bc-11d0-8f78-00a0c9110057")]
Первый именованный параметр имеет значение Style , Tabbed а это означает, что окно будет вкладкой в существующем окне. Позиция док-станции указывается параметром Window n в этом случае, GUID Обозреватель решений.
Примечание. Дополнительные сведения о типах окон в интегрированной среде разработки см. в статье vsWindowType.
Проверка окна средства
- Нажмите клавишу F5 , чтобы открыть новый экземпляр экспериментальной сборки Visual Studio.
- В меню «Вид» наведите указатель мыши на другие окна и нажмите кнопку «Окно первого средства». Окно средства проигрывателя мультимедиа должно открываться в той же позиции, что и Обозреватель решений. Если он по-прежнему отображается в той же позиции, что и раньше, сбросьте макет окна (макет окна или сброса окна).
- Нажмите кнопку (значок поиска ) в окне инструмента. Выберите поддерживаемый звуковой или видеофайл, например C:\windows\media\chimes.wav, а затем нажмите клавишу OPEN. Вы должны услышать шумный звук.
