Partager via


Comment : lier une commande à une touche de raccourci unique

En plus d'afficher les combinaisons de touches de raccourci, vous pouvez utiliser la propriété Bindings pour définir ou modifier les combinaisons de touches d'une commande Visual Studio. Remarquez que lorsque vous modifiez une combinaison de touches, elle remplace la combinaison de touches antérieure (l'ancienne combinaison est perdue). De plus, si la nouvelle combinaison de touches est utilisée par une autre commande, elle est supprimée de l'ancienne commande et réassignée à la nouvelle.

Toutefois, une méthode permet de conserver une combinaison de touches afin qu'une nouvelle combinaison de touches constitue une touche de raccourci supplémentaire au lieu de remplacer l'ancienne. Cette méthode est examinée dans la rubrique, Comment : conserver les raccourcis clavier existants.

Notes

Les boîtes de dialogue et les commandes de menu qui s'affichent peuvent être différentes de celles qui sont décrites dans l'aide, en fonction de vos paramètres actifs ou de l'édition utilisée. Ces procédures ont été développées avec les paramètres de développement généraux actifs. Pour modifier vos paramètres, sélectionnez Importer et Exporter Paramètres dans le menu Outils. Pour plus d'informations, consultez Utilisation des paramètres.

Procédure

Pour lier une commande à une touche de raccourci

  1. Utilisez l'Assistant Complément Visual Studio pour créer un complément. Nommez le projet, puis cliquez sur OK pour démarrer l'Assistant.

    Pour plus d'informations sur l'utilisation de l'Assistant Complément Visual Studio, consultez Comment : créer un complément.

  2. Dans la page Sélectionner un langage de programmation, sélectionnez Créer un complément à l'aide de Visual C# pour exécuter l'exemple Visual C# ci-dessous ou Créer un complément à l'aide de Visual Basic pour exécuter l'exemple Visual Basic.

  3. Collez l'exemple de fonction ci-dessous dans la classe Connect du code générée par l'Assistant Complément de Visual Studio.

  4. La méthode OnConnection comme décrit dans Comment : compiler et exécuter les exemples de code du modèle objet Automation.

  5. Générez et exécutez le complément.

    Appuyez sur F2 pour exécuter la commande File.Newfile

Exemple

L'exemple de complément suivant montre comment lier la commande File.NewFile à une touche de raccourci unique (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);
    }
}

Voir aussi

Tâches

Comment : lier une commande à plusieurs raccourcis clavier

Comment : conserver les raccourcis clavier existants

Concepts

Format de paramètre de la propriété Bindings

Autres ressources

Association de touches à des commandes de complément