Commands2.AddNamedCommand2(AddIn, String, String, String, Boolean, Object, Object[], Int32, Int32, vsCommandControlType) Methode

Definition

Erstellt einen benannten Befehl, der in der Umgebung gespeichert wird und beim nächsten Start der Umgebung verfügbar ist, selbst wenn die Add-Ins beim Start der Umgebung nicht geladen wurden.

EnvDTE::Command AddNamedCommand2(EnvDTE::AddIn const & AddInInstance, std::wstring const & Name, std::wstring const & ButtonText, std::wstring const & Tooltip, bool MSOButton, winrt::Windows::Foundation::IInspectable const & Bitmap, std::Array <winrt::Windows::Foundation::IInspectable const &> const & & ContextUIGUIDs, int vsCommandStatusValue = 3, int CommandStyleFlags = 3, EnvDTE80::vsCommandControlType ControlType = EnvDTE80.vsCommandControlType.vsCommandControlTypeButton);
[System.Runtime.InteropServices.DispId(20)]
public EnvDTE.Command AddNamedCommand2 (EnvDTE.AddIn AddInInstance, string Name, string ButtonText, string Tooltip, bool MSOButton, object Bitmap, ref object[] ContextUIGUIDs, int vsCommandStatusValue = 3, int CommandStyleFlags = 3, EnvDTE80.vsCommandControlType ControlType = EnvDTE80.vsCommandControlType.vsCommandControlTypeButton);
[<System.Runtime.InteropServices.DispId(20)>]
abstract member AddNamedCommand2 : EnvDTE.AddIn * string * string * string * bool * obj * Object[] * int * int * EnvDTE80.vsCommandControlType -> EnvDTE.Command
Public Function AddNamedCommand2 (AddInInstance As AddIn, Name As String, ButtonText As String, Tooltip As String, MSOButton As Boolean, Optional Bitmap As Object, Optional ByRef ContextUIGUIDs As Object(), Optional vsCommandStatusValue As Integer = 3, Optional CommandStyleFlags As Integer = 3, Optional ControlType As vsCommandControlType = EnvDTE80.vsCommandControlType.vsCommandControlTypeButton) As Command

Parameter

AddInInstance
AddIn

Erforderlich. Das AddIn, das den neuen Befehl hinzufügt.

Name
String

Erforderlich. Die Kurzform des Namens für Ihren neuen Befehl. AddNamedCommand2(AddIn, String, String, String, Boolean, Object, Object[], Int32, Int32, vsCommandControlType) verwendet den vorangestellten AddIns. ProgID. um einen eindeutigen Namen zu erstellen.

ButtonText
String

Erforderlich. Der Name, der in der UI für den Befehl angezeigt wird.

Tooltip
String

Erforderlich. Der Text, der angezeigt wird, wenn ein Benutzer den Mauszeiger über ein Steuerelement bewegt, das an den neuen Befehl gebunden ist.

MSOButton
Boolean

Erforderlich. Muss falselauten.

Bitmap
Object

(Optional) Die ID einer Bitmap, die auf der Schaltfläche angezeigt wird.

Bitmap kann eine der folgenden sein: - Ein Bitmap

- Halbe Icon

- Ein IPicture - Die ID einer 16x16-Bitmap-Ressource (jedoch keine Symbol Ressource), die vom Add-in bereitgestellt wird. Visual Studio sucht zuerst in der Satelliten-DLL des Add-Ins. Wenn die Ressource dort nicht gefunden wird, sucht Visual Studio in der Add-In-DLL.

ContextUIGUIDs
Object[]

(Optional) Die GUIDs, die bestimmen, in welchen Umgebungskontexten (d. h. Debugmodus, Designmodus usw.) der Befehl angezeigt wird.

vsCommandStatusValue
Int32

(Optional) Bestimmt, ob der deaktivierte Zustand des Befehls unsichtbar ist oder deaktiviert ist, wenn Sie einen ContextUIGUIDs -Parameter angeben und keiner derzeit aktiv ist. Siehe vsCommandDisabledFlags.

CommandStyleFlags
Int32

(Optional) Eines der vsCommandStyle-Flags, in diesem Fall vsCommandStylePict, vsCommandStylePictAndText oder vsCommandStyleText.

ControlType
vsCommandControlType

(Optional) Definiert den Typ des Steuerelements bei der Erstellung der UI.

Gibt zurück

Command

Der benannte Befehl, der erstellt wurde.

Attribute

Hinweise

Add-Ins können den Namen später ändern ButtonText , indem Sie auf die- QueryStatus Methode reagieren. Wenn der Text mit "#" beginnt, handelt es sich bei dem Rest der Zeichenfolge um eine ganze Zahl, die eine Ressourcen-ID in der registrierten Satelliten-DLL des Add-Ins darstellt.

Es gibt zwei Standard Befehls Zustände: der aktivierte Standardzustand und der Standard Sichtbarkeits Zustand. Diese Standardzustände sind wichtig, wenn ein Befehls Handler nicht gefunden werden kann (da die Komponente nicht geladen oder nicht implementiert wird IDTCommandTarget ). Wenn die Komponente geladen und implementiert wird IDTCommandTarget , werden die Standardwerte nie angewendet.

Es gibt zwei interessante Fälle, in denen Standardzustände verwendet werden:

  1. Sie stellen UI-Kontext-GUIDs über den ContextUIGUIDs Parameter bereit. In diesem Fall wird die Sichtbarkeit vollständig durch die angegebenen Kontext-GUIDs bestimmt. Wenn der Kontext aktiv ist, ist der Befehl sichtbar; andernfalls wird er ausgeblendet. Der aktivierte Status wird vollständig durch die Standardwerte bestimmt. Standardmäßig ist in Visual Studio ein Befehl immer aktiviert, wenn Sie vscommanddisabledflagsgrey übergeben. der Standardzustand wird deaktiviert. Wenn Sie vscommanddisabledflagsenabled übergeben oder diesen Parameter einfach nicht angeben, wird der Standardstatus aktiviert.

  2. Sie stellen keine UI-Kontext-GUIDs über den ContextUIGUIDs Parameter bereit. In diesem Fall basiert die Sichtbarkeit auf den Flags, die Sie an übergeben, vsCommandStatusValue oder dem Standardzustand. Die Standard Sichtbarkeit von Befehlen in vs ist sichtbar. Wenn Sie vscommanddisabledflagshidden hier übergeben, ist der Standardwert unsichtbar. Der aktivierte Status ist hier identisch wie in dem Fall 1, der von den Flags und/oder dem standardmäßigen vs-Verhalten bestimmt wird.

Das Add-in kann eine Aufruf Benachrichtigung über die- IDTCommandTarget Schnittstelle empfangen. Eine Schaltfläche kann mithilfe der- OnConnection Methode der-Schnittstelle hinzugefügt werden IDTExtensibility2 .

Gilt für