Commands2.AddNamedCommand2(AddIn, String, String, String, Boolean, Object, Object[], Int32, Int32, vsCommandControlType) Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Cria um comando nomeado que é salvo pelo ambiente e disponibilizado na próxima vez que o ambiente for iniciado, mesmo que o suplemento não seja carregado na inicialização do ambiente.
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
Parâmetros
- Name
- String
Obrigatórios. A forma abreviada do nome do novo comando. AddNamedCommand2(AddIn, String, String, String, Boolean, Object, Object[], Int32, Int32, vsCommandControlType) usa o prefácio AddIns. ProgID. para criar um nome exclusivo.
- ButtonText
- String
Obrigatórios. O nome a ser mostrado na interface do usuário para este comando.
- Tooltip
- String
Obrigatórios. O texto exibido quando um usuário passa o ponteiro do mouse sobre qualquer controle associado ao novo comando.
- MSOButton
- Boolean
Obrigatórios. Deve ser false.
- Bitmap
- Object
Opcional. A ID de um bitmap a ser exibido no botão.
O bitmap pode ser um dos seguintes:
- Um Bitmap
- Um Icon
- Um IPicture - A ID de um recurso de bitmap 16x16 (mas não um recurso de ícone) que é fornecida pelo suplemento. O Visual Studio parece primeiro na DLL satélite do suplemento. Se o recurso não for encontrado lá, a DLL do suplemento será pesquisada.
- ContextUIGUIDs
- Object[]
Opcional. Os GUIDs que determinam quais contextos de ambiente (isto é, modo de depuração, modo de design e assim por diante) mostram o comando.
- vsCommandStatusValue
- Int32
Opcional. Determina se o estado desabilitado do comando é invisível ou desabilitado quando você fornece um parâmetro ContextUIGUIDs e nenhum está ativo no momento. Consulte vsCommandDisabledFlags.
- CommandStyleFlags
- Int32
Opcional. Um dos vsCommandStyle sinalizadores, em particular vsCommandStylePict , vsCommandStylePictAndText ou vsCommandStyleText .
- ControlType
- vsCommandControlType
Opcional. Define o tipo de controle adicionado quando a interface do usuário é criada.
Retornos
O comando nomeado que foi criado.
- Atributos
Comentários
Os suplementos podem alterar o nome posteriormente ButtonText respondendo ao QueryStatus método. Se o texto começar com #, o restante da cadeia de caracteres será um inteiro que representa uma ID de recurso na DLL satélite registrada do suplemento.
Há dois Estados de comando padrão: o estado padrão habilitado e o estado de visibilidade padrão. Esses Estados padrão serão importantes se um manipulador de comandos não puder ser encontrado (porque o componente não está carregado ou não implementa IDTCommandTarget ). Se o componente for carregado e implementado IDTCommandTarget , os valores padrão nunca se aplicarão.
Há dois casos interessantes em que os Estados padrão são usados:
Você fornece GUIDs de contexto de interface do usuário por meio do
ContextUIGUIDsparâmetro. Nesse caso, a visibilidade é totalmente determinada pelos GUIDs de contexto fornecidos. Se o contexto estiver ativo, o comando ficará visível, caso contrário, ficará oculto. O estado habilitado é totalmente determinado pelos valores padrão. Por padrão, no Visual Studio, um comando é sempre habilitado se você passar vsCommandDisabledFlagsGrey, o estado padrão será desabilitado. Se você passar vsCommandDisabledFlagsEnabled ou simplesmente não fornecer esse parâmetro, o estado padrão será habilitado.Você não fornece GUIDs de contexto de interface do usuário por meio do
ContextUIGUIDsparâmetro. Nesse caso, a visibilidade se baseia nos sinalizadores que você passa paravsCommandStatusValueou no estado padrão. A visibilidade do comando padrão no VS é visível. Se você passar vsCommandDisabledFlagsHidden aqui, o padrão será invisível. O estado habilitado é o mesmo aqui que está no caso 1 acima (determinado pelos sinalizadores e/ou comportamento padrão do VS).
O suplemento pode receber a notificação de invocação por meio da IDTCommandTarget interface. Um botão pode ser adicionado usando o OnConnection método da IDTExtensibility2 interface.