Udostępnij za pośrednictwem


Metoda IDTCommandTarget.QueryStatus —

Zwraca bieżący stan (włączony, wyłączony, ukryte i itp.) o określonej nazwie polecenia.

Przestrzeń nazw:  EnvDTE
Zestaw:  EnvDTE (w EnvDTE.dll)

Składnia

'Deklaracja
Sub QueryStatus ( _
    CmdName As String, _
    NeededText As vsCommandStatusTextWanted, _
    <OutAttribute> ByRef StatusOption As vsCommandStatus, _
    <OutAttribute> ByRef CommandText As Object _
)
void QueryStatus(
    string CmdName,
    vsCommandStatusTextWanted NeededText,
    out vsCommandStatus StatusOption,
    out Object CommandText
)
void QueryStatus(
    [InAttribute] String^ CmdName, 
    [InAttribute] vsCommandStatusTextWanted NeededText, 
    [InAttribute] [OutAttribute] vsCommandStatus% StatusOption, 
    [InAttribute] [OutAttribute] Object^% CommandText
)
abstract QueryStatus : 
        CmdName:string * 
        NeededText:vsCommandStatusTextWanted * 
        StatusOption:vsCommandStatus byref * 
        CommandText:Object byref -> unit
function QueryStatus(
    CmdName : String, 
    NeededText : vsCommandStatusTextWanted, 
    StatusOption : vsCommandStatus, 
    CommandText : Object
)

Parametry

  • CmdName
    Typ: String

    Nazwa polecenia, aby sprawdzić.

Uwagi

W poniższym przykładzie użyto Command obiektu, jego AddNamedCommand i AddControl metody oraz IDTCommandTarget interfejs i jego (Exec i QueryStatus) metod do wykazania, jak są wyświetlane jako polecenia na dodatek Narzędzia menu w Visual Studio.Należy zauważyć, że ten kod nie działa w makrze.

Przykłady

Implements IDTCommandTarget

Dim applicationObject As EnvDTE.DTE
Dim addInInstance as EnvDTE.AddIn
   
Dim objAddIn As AddIn = CType(addInInst, AddIn)
Dim CommandObj As Command
Try
   CommandObj = applicationObject.Commands.AddNamedCommand(objAddIn, "MyAddin1", "MyAddin1", "Executes the command for MyAddin1", True, 59, Nothing, 1 + 2)
   '1+2 == vsCommandStatusSupported+vsCommandStatusEnabled
   CommandObj.AddControl(applicationObject.CommandBars.Item("Tools"))
Catch e as System.Exception
End Try

Public Sub Exec(ByVal cmdName As String, ByVal executeOption As vsCommandExecOption, ByRef varIn As Object, ByRef varOut As Object, ByRef handled As Boolean) Implements IDTCommandTarget.Exec
   handled = False
   If (executeOption = vsCommandExecOption.vsCommandExecOptionDoDefault) Then
      If cmdName = "MyAddin1.Connect.MyAddin1" Then
         handled = True
         Exit Sub
      End If
   End If
End Sub
   
Public Sub QueryStatus(ByVal cmdName As String, ByVal neededText As vsCommandStatusTextWanted, ByRef statusOption As vsCommandStatus, ByRef commandText As Object) Implements IDTCommandTarget.QueryStatus
   If neededText = EnvDTE.vsCommandStatusTextWanted.vsCommandStatusTextWantedNone Then
      If cmdName = "MyAddin1.Connect.MyAddin1" Then
         statusOption = CType(vsCommandStatus.vsCommandStatusEnabled & vsCommandStatus.vsCommandStatusSupported, vsCommandStatus)
      Else
         statusOption = vsCommandStatus.vsCommandStatusUnsupported
      End If
   End If
End Sub 

Zabezpieczenia programu .NET Framework

Zobacz też

Informacje

IDTCommandTarget Interfejs

Przestrzeń nazw EnvDTE