Udostępnij za pośrednictwem


Jak: narazić dodatek programu w Menu skrótów

Podczas gdy Visual Studio automatyzacji modelu ułatwia umieścić polecenia Dodaj w menu najwyższego poziomu, takich jak na Narzędzia menu, można również dodać polecenia do menu skrótów i podmenu.

Aby to zrobić, jednak użyć modelu obiektów programu Microsoft Visual Studio polecenie Pasek jawnie zdefiniować docelowy skrótu menu i podmenu.Następnie należy wywołać Visual StudioAddControl metody. 

Menu skrótów są podobne do innych menu w Visual Studio.Aby uzyskać do nich dostęp, wskaż strzałkę w dół w menu rozwijanym, lub kliknij prawym przyciskiem myszy element w zintegrowane środowisko programistyczne (IDE).

Aby dodać polecenie do menu skrótów (lub dowolnego menu lub paska narzędzi), należy znać jego nazwę polecenia.Można znaleźć, przeszukując się poprzez klawiatury węzeł w Opcje okno dialogowe na Narzędzia menu.

W poniższej procedurze przedstawiono sposób dodawania polecenie Dodaj do Listy zadań menu skrótów.

[!UWAGA]

Okien dialogowych i poleceń menu, którą widzisz mogą różnić się od tych opisanych w pomocy, w zależności od tego, aktywne ustawienia lub edition.Procedury te zostały opracowane z ogólnych ustawień rozwoju aktywnych.Aby zmienić ustawienia, wybierz polecenie przywóz i wywózUstawienia na Narzędzia menu.Aby uzyskać więcej informacji, zobacz Visual Studio, ustawienia.

Aby dodać polecenie Dodaj do menu skrótów

  1. Na pliku menu, wskaż Nowy, a następnie kliknij przycisk Projekt.

  2. W Nowy projekt okno dialogowe rozwiń Inne typy projektów, kliknij rozszerzalności, a następnie kliknij przycisk - w Visual Studio w szablonów okienka.

    Nazwa ContextCmd w, a następnie kliknij przycisk OK, aby rozpocząć programu Visual Studio-w Kreatorze.

  3. Wybierz opcję, aby utworzyć interfejs użytkownika (UI) dla dodatku poprzez sprawdzenie chcesz utworzyć polecenie paska interfejsu użytkownika dla obsługi dodatku? pole.

    Spowoduje to dodanie niektórych kod interfejsu użytkownika do OnConnection metody.Również dodaje Exec metodę, która obsługuje zdarzenie po kliknięciu polecenia add-in, oraz QueryStatus metodę, która zawiera informacje dotyczące statusu dodatek.

  4. Zastąp kod z następujących czynności:

    Imports System
    Imports Microsoft.VisualStudio.CommandBars
    Imports Extensibility
    Imports EnvDTE
    Imports EnvDTE80
    
    Public Class Connect
    
        Implements IDTExtensibility2
        Implements IDTCommandTarget
    
        Dim _applicationObject As DTE2
        Dim _addInInstance As AddIn
    
        Dim cmdBarCtl As CommandBarControl
    
        Public Sub New()
        End Sub
    
        Public Sub OnConnection(ByVal application As Object, ByVal _
          connectMode As ext_ConnectMode, ByVal addInInst As Object, _
          ByRef custom As Array) Implements _
          IDTExtensibility2.OnConnection
            Dim cmd As Command
            Dim cmdBar As CommandBar
    
            _applicationObject = CType(application, DTE2)
            _addInInstance = CType(addInInst, AddIn)
    
            Try
                If CType(ext_ConnectMode.ext_cm_AfterStartup Or _
                  ext_ConnectMode.ext_cm_Startup, Boolean) Then
                    ' If the command does not exist, add it.
                    If cmd Is Nothing Then
                        cmd = _applicationObject.Commands. _
                          AddNamedCommand(_addInInstance, _
                          "newCmd", "newCmd", "Runs the add-in.", _
                          True, 59, Nothing, _
                          vsCommandStatus.vsCommandStatusSupported _
                          Or vsCommandStatus.vsCommandStatusEnabled)
                    End If
    
                    ' Reference the Task List shortcut menu.
                    cmdBar = CType(_applicationObject. _
                      CommandBars.Item("Task List"), _
                      Microsoft.VisualStudio.CommandBars.CommandBar)
    
                    ' Add a command to the Task List's shortcut menu.
                    cmdBarCtl = CType(cmd.AddControl(cmdBar, _
                      cmdBar.Controls.Count + 1), _
                      Microsoft.VisualStudio.CommandBars. _
                      CommandBarControl)
                    cmdBarCtl.Caption = "A New Command"
                End If
            Catch e As System.Exception
                System.Windows.Forms.MessageBox.Show(e.ToString)
            End Try
        End Sub
    
        Public Sub OnDisconnection(ByVal disconnectMode As _
          ext_DisconnectMode, ByRef custom As Array) Implements _
          IDTExtensibility2.OnDisconnection
            Try
                ' Delete the command bar control from the 
                   ' shortcut menu.
                If Not (cmdBarCtl Is Nothing) Then
                    cmdBarCtl.Delete()
                End If
            Catch e As System.Exception
                System.Windows.Forms.MessageBox.Show(e.ToString)
            End Try
        End Sub
    
        Public Sub OnAddInsUpdate(ByRef custom As Array) Implements _
          IDTExtensibility2.OnAddInsUpdate
        End Sub
    
        Public Sub OnStartupComplete(ByRef custom As Array) Implements _
          IDTExtensibility2.OnStartupComplete
        End Sub
    
        Public Sub OnBeginShutdown(ByRef custom As Array) Implements _
          IDTExtensibility2.OnBeginShutdown
        End Sub
    
        Public Sub QueryStatus(ByVal commandName As String, ByVal _
          neededText As vsCommandStatusTextWanted, ByRef status As _
          vsCommandStatus, ByRef commandText As Object) Implements _
          IDTCommandTarget.QueryStatus
            If commandName = "ContextCmd.Connect.newCmd" Then
                status = CType(vsCommandStatus.vsCommandStatusEnabled _
                  + vsCommandStatus.vsCommandStatusSupported, _
                  vsCommandStatus)
            Else
                status = vsCommandStatus.vsCommandStatusUnsupported
            End If
        End Sub
    
        Public Sub Exec(ByVal commandName 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 commandName = "ContextCmd.Connect.newCmd" Then
                    handled = True
                    System.Windows.Forms.MessageBox.Show("Add-in _
                      running...")
                End If
            End If
        End Sub
    End Class
    
  5. Dodaj kod, który ma być wykonywana po kliknięciu polecenia w Exec procedury.

  6. Budowanie dodatek, a następnie uruchom go.

  7. Wyświetl Listy zadań przez kliknięcie przycisku Listy zadań na widoku menu.

  8. Na Narzędzia menu, kliknij przycisk - W Menedżerze.

  9. Aktywowanie dodatek ContextCmd przez zaznaczenie pola wyboru obok niego w - W Menedżerze.

  10. Kliknij prawym przyciskiem myszy listy zadań.

    ContextCmd dodatek polecenia pojawia się w menu skrótów.

Zobacz też

Zadania

Jak: dodatki formantu przy użyciu dodać Menedżera

Jak: Tworzenie dodatku

Instruktaż: Tworzenie kreatora

Informacje

Visual Studio poleceń i przełączników

Koncepcje

Wyświetlanie dodatki na paski narzędzi i menu

Dodaj w rejestracji

Wykres modelu obiektu automatyzacji

Inne zasoby

Tworzenie dodatków i kreatorów