Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Dieser Artikel führt Sie durch die Schritte zum Hinzufügen von Menüs und Befehlen zur Visual Studio-Erweiterung. Befehle werden am häufigsten als Schaltflächen in Menüs in Visual Studio verwendet. Zum Erstellen eines Befehls sind zwei Schritte erforderlich:
- Definieren des Befehls
- Behandeln des Klick-/Aufrufs
Definieren des Befehls
Jede Schaltfläche in jedem Menü ist ein Befehl. Um ihrer Erweiterung einen Befehl hinzuzufügen, müssen Sie ihn zuerst in der VSCT-Datei definieren. Es könnte ungefähr wie folgt aussehen:
<Buttons>
<Button guid="MyPackage" id="MyCommand" priority="0x0105" type="Button">
<Parent guid="VSMainMenu" id="View.DevWindowsGroup.OtherWindows.Group1"/>
<Icon guid="ImageCatalogGuid" id="StatusInformation" />
<CommandFlag>IconIsMoniker</CommandFlag>
<Strings>
<ButtonText>R&unner Window</ButtonText>
</Strings>
</Button>
</Buttons>
Diese Schaltfläche wird in der übergeordneten Gruppe im Menü "Andere Fenster anzeigen>" platziert, wie im Parent
Element angegeben.
Sie können die Erweiterung jetzt ausführen, um festzustellen, ob der Befehl an der richtigen Position und im richtigen Menü angezeigt wird.
Behandeln der Klick-/Aufrufe
Sobald die Schaltfläche definiert ist, müssen wir behandeln, was passiert, wenn sie aufgerufen wird. Dies geschieht in einer C#-Klasse, die wie folgt aussieht:
[Command("489ba882-f600-4c8b-89db-eb366a4ee3b3", 0x0100)]
public class MyCommand : BaseCommand<TestCommand>
{
protected override Task ExecuteAsync(OleMenuCmdEventArgs e)
{
// Do something
}
}
Stellen Sie sicher, dass Sie sie über die Methode Ihrer Package
Klasse InitializeAsync
aufrufen.
protected override async Task InitializeAsync(CancellationToken cancellationToken, IProgress<ServiceProgressData> progress)
{
await this.RegisterCommandsAsync();
}
Die Befehls-GUID und ID müssen mit dem GUID/ID-Paar aus Button
dem Element in der VSCT-Datei übereinstimmen.