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
Na pliku menu, wskaż Nowy, a następnie kliknij przycisk Projekt.
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.
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.
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
Dodaj kod, który ma być wykonywana po kliknięciu polecenia w Exec procedury.
Budowanie dodatek, a następnie uruchom go.
Wyświetl Listy zadań przez kliknięcie przycisku Listy zadań na widoku menu.
Na Narzędzia menu, kliknij przycisk - W Menedżerze.
Aktywowanie dodatek ContextCmd przez zaznaczenie pola wyboru obok niego w - W Menedżerze.
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
Instruktaż: Tworzenie kreatora
Informacje
Visual Studio poleceń i przełączników
Koncepcje
Wyświetlanie dodatki na paski narzędzi i menu
Wykres modelu obiektu automatyzacji