Adicionando menus e comandos a extensões do Visual Studio
Este artigo orienta você pelas etapas para adicionar menus e comandos à sua extensão do Visual Studio. Os comandos são mais frequentemente usados como botões em menus ao redor do Visual Studio. Para criar um comando requer duas etapas:
- Definir o comando
- Manipular o clique/invocação
Definir o comando
Cada botão em cada menu é um comando. Para adicionar um comando à sua extensão, você deve defini-lo no arquivo .vsct primeiro. Poderia ser algo assim:
<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>
Esse botão é colocado no grupo pai localizado no menu Exibir > Outras Janelas, conforme especificado no Parent
elemento .
Agora você pode executar a extensão agora para ver se o comando aparece no local e no menu corretos.
Manipular o clique/invocações
Uma vez que o botão é definido, precisamos lidar com o que acontece quando ele é invocado. Fazemos isso em uma classe C# que se parece com isto:
[Command("489ba882-f600-4c8b-89db-eb366a4ee3b3", 0x0100)]
public class MyCommand : BaseCommand<TestCommand>
{
protected override Task ExecuteAsync(OleMenuCmdEventArgs e)
{
// Do something
}
}
Certifique-se de chamá-lo a partir do método da InitializeAsync
sua Package
classe.
protected override async Task InitializeAsync(CancellationToken cancellationToken, IProgress<ServiceProgressData> progress)
{
await this.RegisterCommandsAsync();
}
O comando Guid e ID deve corresponder ao par guid/id do Button
elemento no arquivo .vsct