Commands.AddNamedCommand-Methode

Aktualisiert: November 2007

Erstellt einen benannten Befehl, der von der Umgebung gespeichert wird und beim nächsten Start der Umgebung zur Verfügung steht, auch wenn das Add-In beim Umgebungsstart nicht geladen wird.

Namespace:  EnvDTE
Assembly:  EnvDTE (in EnvDTE.dll)

Syntax

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

Dim instance As Commands
Dim AddInInstance As AddIn
Dim Name As String
Dim ButtonText As String
Dim Tooltip As String
Dim MSOButton As Boolean
Dim Bitmap As Integer
Dim ContextUIGUIDs As Object()
Dim vsCommandDisabledFlagsValue As Integer
Dim returnValue As Command

returnValue = instance.AddNamedCommand(AddInInstance, _
    Name, ButtonText, Tooltip, MSOButton, _
    Bitmap, ContextUIGUIDs, vsCommandDisabledFlagsValue)
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
)
function AddNamedCommand(
    AddInInstance : AddIn, 
    Name : String, 
    ButtonText : String, 
    Tooltip : String, 
    MSOButton : boolean, 
    Bitmap : int, 
    ContextUIGUIDs : Object[], 
    vsCommandDisabledFlagsValue : int
) : Command

Parameter

  • AddInInstance
    Typ: EnvDTE.AddIn

    Erforderlich. Das AddIn-Objekt fügt den neuen Befehl hinzu.

  • Name
    Typ: System.String

    Erforderlich. Die Kurzform für den Namen des neuen Befehls. AddNamedCommand stellt Addins.Progid. voran, um einen eindeutigen Namen zu erstellen.

  • ButtonText
    Typ: System.String

    Erforderlich. Der zu verwendende Name, wenn der Befehl an eine Schaltfläche gebunden ist, die anstelle des Symbols mit ihrem Namen angezeigt wird.

  • Tooltip
    Typ: System.String

    Erforderlich. Der angezeigte Text, wenn ein Benutzer den Mauszeiger über eines der an den neuen Befehl gebundenen Steuerelemente hält.

  • MSOButton
    Typ: System.Boolean

    Erforderlich. Zeigt an, ob das Schaltflächenbild für den benannten Befehl ein Office-Bild ist. True = Schaltfläche. Wenn MSOButton den Wert False hat, entspricht Bitmap der ID einer 16x16-Bitmapressource (aber keiner Symbolressource) in einer Ressourcen-DLL von Visual C++, die sich in einem Ordner mit dem Gebietsschemabezeichner der Sprache (z. B. 1033 für Englisch) befinden muss.

  • Bitmap
    Typ: System.Int32

    Optional. Die ID einer auf der Schaltfläche anzuzeigenden Bitmap.

  • ContextUIGUIDs
    Typ: array<System.Object[]%

    Optional. Ein SafeArray von GUIDs, das bestimmt, mit welchen Umgebungskontexten (d. h. Debugmodus, Entwurfsmodus usw.) der Befehl aktiviert wird. Weitere Informationen finden Sie unter DisableFlags.

  • vsCommandDisabledFlagsValue
    Typ: System.Int32

    Optional. Bestimmt, ob der Befehl im deaktivierten Zustand unsichtbar ist oder grau angezeigt wird, wenn Sie ContextUIGUIDs angeben und derzeit keine aktiv sind.

Rückgabewert

Typ: EnvDTE.Command

Ein Command-Objekt.

Hinweise

Add-Ins können später den ButtonText-Namen ändern, indem sie auf die QueryStatus-Methode reagieren. Wenn der Text mit "#" beginnt, besteht der Rest der Zeichenfolge aus einer ganzen Zahl, die eine Ressourcen-ID in der registrierten Satellite-DLL des Add-Ins darstellt.

ppsaContextUIGUIDs wird verwendet, wenn das Add-In nicht geladen wird und daher auf die QueryStatus-Methode nicht reagieren kann. Bei leeren ppsaContextUIGUIDs ist der Befehl so lange aktiviert, bis das Add-In geladen wird und auf QueryStatus reagieren kann.

Das Add-In kann Aufrufbenachrichtigungen über die IDTCommandTarget-Schnittstelle empfangen. Eine Schaltfläche kann hinzugefügt werden, indem die OnConnection-Methode der IDTExtensibility2-Schnittstelle verwendet wird.

Beispiele

' 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

Berechtigungen

Siehe auch

Referenz

Commands-Schnittstelle

Commands-Member

EnvDTE-Namespace