Commands.AddCommandBar 方法

创建一个命令栏,该命令栏被保存并且在下次启动环境时可用。

命名空间:  EnvDTE
程序集:  EnvDTE(在 EnvDTE.dll 中)

语法

声明
Function AddCommandBar ( _
    Name As String, _
    Type As vsCommandBarType, _
    CommandBarParent As Object, _
    Position As Integer _
) As Object
Object AddCommandBar(
    string Name,
    vsCommandBarType Type,
    Object CommandBarParent,
    int Position
)
Object^ AddCommandBar(
    [InAttribute] String^ Name, 
    [InAttribute] vsCommandBarType Type, 
    [InAttribute] Object^ CommandBarParent, 
    [InAttribute] int Position
)
abstract AddCommandBar : 
        Name:string * 
        Type:vsCommandBarType * 
        CommandBarParent:Object * 
        Position:int -> Object
function AddCommandBar(
    Name : String, 
    Type : vsCommandBarType, 
    CommandBarParent : Object, 
    Position : int
) : Object

参数

  • Name
    类型:String

    必选。 新命令栏的名称。

  • CommandBarParent
    类型:Object

    可选。 要将新命令栏添加到其中的 Office CommandBar 对象。(但是,如果 Type 是 vsCommandBarTypeMenu,则该项为必选项。)

  • Position
    类型:Int32

    可选。 命令栏中放置新命令栏的索引位置,从 1 开始。

返回值

类型:Object
一个 CommandBar 对象。

备注

CommandBar 对象是 Microsoft Office 对象模型的成员。

通过使用此方法添加的命令栏是永久的命令栏,它可用于 IDE 的每个会话中,无论是否加载外接程序。 仅当需要永久命令栏时才应使用此方法来添加命令栏。 第一次上载外接程序时,只应调用一次此方法。 如果您想要临时命令栏,它仅在实际加载外接程序时显示,则必须在加载外接程序时使用 DTE.CommandBars.Add 方法,然后在上载外接程序时调用 DTE.CommandBars.Remove 方法。

由于永久显示命令栏在外接程序不加载时也存在,所以在卸载外接程序时一定要将其删除。 因此,必须使用 MSI 来安装和卸载加载项,并将自定义操作添加到您的卸载程序。

关于添加和删除永久和临时命令栏的更多信息,请参见 HOWTO: Adding buttons, commandbars and toolbars to Visual Studio .NET from an add-inHOWTO: Removing commands and UI elements during Visual Studio .NET add-in uninstallation

示例

' Macro code.
Imports Microsoft.VisualStudio.CommandBars
Sub AddCommandBarExample()
   ' 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 customin, customout As Object
   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.
   cmdbarobj = cmds.AddCommandBar("Mycmdbar", _
   vsCommandBarType.vsCommandBarTypeToolbar)
   MsgBox("Commandbar name: " & cmdbarobj.Name)
   cmdobj = cmds.AddNamedCommand(colAddins.Item(1), "mycommand", _
   "mycommand", "tooltip for mycommand", True)
End Sub

.NET Framework 安全性

请参阅

参考

Commands 接口

EnvDTE 命名空间