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


Commands.AddNamedCommand - метод

Создает команду с именем, которая сохраняется средой и становится доступной при следующем запуске среды, даже если модуль настроек при запуске среды не загружается.

Пространство имен:  EnvDTE
Сборка:  EnvDTE (в EnvDTE.dll)

Синтаксис

'Декларация
Function AddNamedCommand ( _
    AddInInstance As AddIn, _
    Name As String, _
    ButtonText As String, _
    Tooltip As String, _
    MSOButton As Boolean, _
    Bitmap As Integer, _
    ByRef ContextUIGUIDs As Object(), _
    vsCommandDisabledFlagsValue As Integer _
) As Command
Command AddNamedCommand(
    AddIn AddInInstance,
    string Name,
    string ButtonText,
    string Tooltip,
    bool MSOButton,
    int Bitmap,
    ref Object[] ContextUIGUIDs,
    int vsCommandDisabledFlagsValue
)
Command^ AddNamedCommand(
    [InAttribute] AddIn^ AddInInstance, 
    [InAttribute] String^ Name, 
    [InAttribute] String^ ButtonText, 
    [InAttribute] String^ Tooltip, 
    [InAttribute] bool MSOButton, 
    [InAttribute] int Bitmap, 
    [InAttribute] array<Object^>^% ContextUIGUIDs, 
    [InAttribute] int vsCommandDisabledFlagsValue
)
abstract AddNamedCommand : 
        AddInInstance:AddIn * 
        Name:string * 
        ButtonText:string * 
        Tooltip:string * 
        MSOButton:bool * 
        Bitmap:int * 
        ContextUIGUIDs:Object[] byref * 
        vsCommandDisabledFlagsValue:int -> Command 
function AddNamedCommand(
    AddInInstance : AddIn, 
    Name : String, 
    ButtonText : String, 
    Tooltip : String, 
    MSOButton : boolean, 
    Bitmap : int, 
    ContextUIGUIDs : Object[], 
    vsCommandDisabledFlagsValue : int
) : Command

Параметры

  • AddInInstance
    Тип: EnvDTE.AddIn
    Обязательный.Объект AddIn добавляет новую команду.
  • Name
    Тип: System.String
    Обязательный.Краткая форма имени новой команды.Метод AddNamedCommand использует префикс Addins.Progid. для создания уникального имени.
  • ButtonText
    Тип: System.String
    Обязательный.Имя, которое используется, если команда имеет привязку к кнопке, которая отображается именем, а не значком.
  • Tooltip
    Тип: System.String
    Обязательный.Текст, отображаемый, когда пользователь наводит указатель мыши на любой элемент управления, который имеет привязку к новой команде.
  • MSOButton
    Тип: System.Boolean
    Обязательный.Указывает, является ли рисунок кнопки именованной команды рисунком Office.Значение True задает кнопку.Если MSOButton имеет значение False, то Bitmap является идентификатором растрового рисунка 16x16 (но не значка) в библиотеке DLL ресурсов Visual C++, который должен находиться в одной папке с локальным идентификатором языка (1033 для английского, 1049 для русского).
  • Bitmap
    Тип: System.Int32
    Необязательный.Идентификатор растрового рисунка, который будет отображен на кнопке.
  • ContextUIGUIDs
    Тип: array<System.Object[]%
    Необязательный.Массив SafeArray идентификаторов GUID, который определяет, в каком контексте среды (другими словами, в режиме отладки, режиме конструктора и так далее) отображается команда.См. раздел vsCommandDisabledFlags.

Возвращаемое значение

Тип: EnvDTE.Command
Объект Command.

Заметки

Надстройки позже могут изменять имя ButtonText, отвечая на метод QueryStatus.Если текст начинается с "#", то остальная часть строки — это целое число, которое представляет идентификатор ресурса в зарегистрированной вспомогательной библиотеке DLL надстройки.

Параметры ContextUIGUIDs и vsCommandStatusValue используются, когда надстройка не загружена и поэтому не может отвечать на метод QueryStatus.Если ContextUIGUIDs имеет пустое значение, команда включается и остается включенной, пока надстройка не загрузится и не сможет ответить на QueryStatus.

Надстройка может получить уведомление о вызове через интерфейс IDTCommandTarget.Кнопку можно добавить при помощи метода OnConnection интерфейса IDTExtensibility2.

Примеры

' Macro code.
Imports Microsoft.VisualStudio.CommandBars
Sub AddControlExample()
   ' Before running, you must add a reference to the Office 
   ' typelib to gain access to the CommandBar object. Also, for this 
   ' example to work correctly, there should be an add-in available 
   ' in the Visual Studio environment.
   Dim cmds As Commands
   Dim cmdobj As Command
   Dim cmdbarobj As CommandBar
   Dim colAddins As AddIns

   ' Set references.
   colAddins = DTE.AddIns()
   cmds = DTE.Commands
   cmdobj = cmds.Item("File.NewFile")

   ' Create a toolbar and add the File.NewFile command to it.
   cmds.AddCommandBar("Mycmdbar", _
   vsCommandBarType.vsCommandBarTypeToolbar)
   MsgBox("Commandbar name: " & cmdbarobj.Name)
   cmdobj.AddControl(cmdbarobj)
   cmds.AddNamedCommand(colAddins.Item(1), "MyCommand", _
   "Button Text", "Some tooltip", True)
End Sub

Безопасность платформы .NET Framework

См. также

Ссылки

Commands Интерфейс

EnvDTE - пространство имен