Compartir a través de


Agregar menús y comandos a extensiones de Visual Studio

Este artículo le guía por los pasos para agregar menús y comandos a la extensión de Visual Studio. Los comandos se usan con más frecuencia como botones en menús alrededor de Visual Studio. Para crear un comando, es necesario realizar dos pasos:

  1. Definir el comando
  2. Controlar la invocación y el clic

Definir el comando

Cada botón de cada menú es un comando. Para agregar un comando a la extensión, primero debe definirlo en el archivo .vsct. Podría tener un aspecto similar al siguiente:

<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&amp;unner Window</ButtonText>
    </Strings>
  </Button>
</Buttons>

Este botón se coloca en el grupo primario ubicado en el menú Ver > otras ventanas , tal como se especifica en el Parent elemento .

Ahora puede ejecutar la extensión para ver si el comando aparece en la ubicación y el menú correctos.

Controlar las invocaciones o clics

Una vez definido el botón, es necesario controlar lo que sucede cuando se invoca. Lo hacemos en una clase de C# que tenga este aspecto:

[Command("489ba882-f600-4c8b-89db-eb366a4ee3b3", 0x0100)]
public class MyCommand : BaseCommand<TestCommand>
{
    protected override Task ExecuteAsync(OleMenuCmdEventArgs e)
    {
        // Do something
    }
}

Asegúrese de llamarlo desde Package el método de la InitializeAsync clase.

protected override async Task InitializeAsync(CancellationToken cancellationToken, IProgress<ServiceProgressData> progress)
{
    await this.RegisterCommandsAsync();
 }    

El guid y el identificador de comando deben coincidir con el par guid/id del Button elemento en el archivo .vsct.