Compartir a través de


Cómo: Enlazar un comando a una única tecla de método abreviado

Los complementos de Visual Studio están desusados en Visual Studio 2013. Debe actualizar los complementos a las extensiones de VSPackage. Para obtener más información sobre la actualización, vea Preguntas más frecuentes: Convertir complementos en extensiones de VSPackage.

Además de mostrar los enlaces de teclas de método abreviado, también puede utilizar la propiedad Bindings para establecer o cambiar los enlaces de teclas de un comando de Visual Studio. Observe que cuando cambia un enlace de teclado, éste reemplaza el enlace de teclado anterior; es decir, este último se pierde. Además, si otro comando utiliza el nuevo enlace de teclado, éste también se quita del comando anterior y se reasigna al nuevo comando.

Sin embargo, existe una forma de conservar un enlace de teclado para que se convierta en una tecla de método abreviado adicional un enlace nuevo, en lugar de reemplazar al anterior. Este método se explica brevemente en el tema Cómo: Conservar los métodos abreviados de teclado existentes.

Nota

Los cuadros de diálogo y comandos de menú que se ven pueden diferir de los descritos en la Ayuda, en función de los valores de configuración o de edición activos.Estos procedimientos se han desarrollado con la Configuración de desarrollo general activa.Para cambiar la configuración, elija la opción Importar y exportarconfiguración del menú Herramientas.Para obtener más información, vea Personalizar la configuración de desarrollo en Visual Studio.

Procedimiento

Para enlazar un comando a una tecla de método abreviado

  1. Use el Asistente para complementos de Visual Studio para crear un nuevo complemento. Asigne un nombre al proyecto y haga clic en Aceptar para iniciar el asistente.

    Para obtener más información sobre el uso del Asistente para complementos de Visual Studio, vea Cómo: Crear un complemento.

  2. En la página Seleccione un lenguaje de programación, seleccione Crear complemento utilizando Visual C# para ejecutar el ejemplo de Visual C#, que aparece a continuación, o Crear un complemento utilizando Visual Basic para ejecutar el ejemplo de Visual Basic.

  3. Pegue la función de ejemplo que aparece a continuación en la clase Connect del código generado por el Asistente para complementos de Visual Studio.

  4. El método OnConnection tal y como se describe en Cómo: Compilar y ejecutar los ejemplos de código del modelo de objetos de automatización.

  5. Compile el complemento y ejecútelo.

    Presione F2 para ejecutar el comando File.Newfile.

Ejemplo

En el ejemplo de complemento siguiente se muestra cómo enlazar el comando File.NewFile a una única tecla de método abreviado (F2).

Public Sub OnConnection(ByVal application As Object, ByVal  _
  connectMode As ext_ConnectMode, ByVal addInInst As Object, ByRef  _
  custom As Array) Implements IDTExtensibility2.OnConnection
    _applicationObject = CType(application, DTE2)
    _addInInstance = CType(addInInst, AddIn)
    BindingsExample(_applicationObject)
            
End Sub

Sub BindingsExample(ByVal dte As DTE2)
    Dim cmds As Commands
    Dim cmd As Command
    Try
        ' Set references to the Commands collection and the 
        ' File.NewFile command.
        cmds = DTE.Commands
        cmd = cmds.Item("File.NewFile")

        ' Assigns the command (File.NewFile) globally to the F2 key.
        cmd.Bindings = "Global::F2"
        MsgBox("key remapped")
    Catch ex As Exception
        MsgBox(ex.ToString)
    End Try
End Sub
public void OnConnection(object application, ext_ConnectMode 
connectMode, object addInInst, ref Array custom)
{
    _applicationObject = (DTE2)application;
    _addInInstance = (AddIn)addInInst;
    BindingsExample(_applicationObject);

}

public void BindingsExample(DTE2 dte)
{
    Commands cmds;
    Command cmd;

    try
    {
        // Set references to the Commands collection and the 
        // File.NewFile command.
        cmds = dte.Commands;
        cmd = cmds.Item("File.NewFile", 1);

        // Assigns the command (File.NewFile) globally to the F2 key.
        cmd.Bindings = "Global::F2";
        System.Windows.Forms.MessageBox.Show("key remapped");
    }
    catch (Exception ex)
    {
        System.Windows.Forms.MessageBox.Show(ex.Message);
    }
}

Vea también

Tareas

Cómo: Enlazar un comando a varios métodos abreviados de teclado

Cómo: Conservar los métodos abreviados de teclado existentes

Conceptos

Formato de los parámetros de la propiedad Bindings

Otros recursos

Enlazar comandos de complementos a teclas