Raccourcis clavier de liaison aux éléments de MenuBinding Keyboard Shortcuts to Menu Items

Pour lier un raccourci clavier à une commande de menu personnalisés, ajoutez simplement une entrée dans le fichier .vsct pour le package.To bind a keyboard shortcut to a custom menu command, just add an entry to the .vsct file for the package. Cette rubrique explique comment mapper un raccourci clavier pour un bouton personnalisé, un élément de menu ou une commande de barre d’outils et comment appliquer le mappage du clavier dans l’éditeur par défaut ou de limiter à un éditeur personnalisé.This topic explains how to map a keyboard shortcut to a custom button, menu item, or toolbar command, and how to apply the keyboard mapping in the default editor or limit it to a custom editor.

Pour affecter des raccourcis clavier pour les éléments de menu Visual Studio existants, consultez identification et personnalisation des raccourcis clavier.To assign keyboard shortcuts to existing Visual Studio menu items, see Identifying and Customizing Keyboard Shortcuts.

Choix d’une combinaison de touchesChoosing a Key Combination

De nombreux raccourcis clavier sont déjà utilisés dans Visual Studio.Many keyboard shortcuts are already used in Visual Studio. Vous ne devez pas attribuer le même raccourci à plusieurs commandes, car les liaisons en double sont difficiles à détecter et peuvent également provoquer des résultats imprévisibles.You should not assign the same shortcut to more than one command because duplicate bindings are hard to detect and may also cause unpredictable results. Par conséquent, il est judicieux de vérifier la disponibilité d’un raccourci avant de l’affecter.Therefore, it is a good idea to verify the availability of a shortcut before you assign it.

Pour vérifier la disponibilité d’un raccourci clavierTo verify the availability of a keyboard shortcut

  1. Dans le Outils / Options / environnement fenêtre, sélectionnez clavier.In the Tools / Options / Environment window, select Keyboard.

  2. Assurez-vous que utiliser un nouveau raccourci dans a la valeur Global.Make sure that Use new shortcut in is set to Global.

  3. Dans le appuyez sur les touches de raccourci , tapez le raccourci clavier que vous souhaitez utiliser.In the Press shortcut keys box, type the keyboard shortcut that you want to use.

    Si le raccourci est déjà utilisé dans Visual Studio, le raccourci actuellement utilisé par zone affiche la commande de raccourci appelle actuellement.If the shortcut is already used in Visual Studio, the Shorcut currently used by box will show the command that the shortcut currently calls.

  4. Essayez différentes combinaisons de touches jusqu'à ce que vous trouviez un qui n’est pas mappé.Try different combinations of keys until you find one that is not mapped.

    Note

    Raccourcis clavier que vous utilisent ALT peuvent ouvrir un menu et d’exécuter une commande pas directement.Keyboard shortcuts that use ALT may open a menu and not directly execute a command. Par conséquent, le raccourci actuellement utilisé par zone peut être vide lorsque vous tapez un raccourci qui inclut ALT.Therefore, the Shorcut currently used by box may be blank when you type a shortcut that includes ALT. Vous pouvez vérifier que le raccourci ne s’ouvre pas un menu en fermant le Options boîte de dialogue et en appuyant sur les clés.You can verify that the shortcut does not open a menu by closing the Options dialog box and then pressing the keys.

    La procédure suivante suppose que vous disposez d’un VSPackage existant avec une commande de menu.The following procedure assumes that you have an existing VSPackage with a menu command. Si vous avez besoin d’aide pour y parvenir, examinons avec une commande de Menu pour créer une Extension.If you need help doing that, take a look at Creating an Extension with a Menu Command.

Pour affecter un raccourci clavier à une commandeTo assign a keyboard shortcut to a command

  1. Ouvrez le fichier .vsct pour votre package.Open the .vsct file for your package.

  2. Créer un vide <KeyBindings> section après le <Commands> si elle n’est pas déjà présent.Create an empty <KeyBindings> section after the <Commands> if it is not already present.

    Avertissement

    Pour plus d’informations sur les combinaisons de touches, consultez Keybinding.For more information about key bindings, see Keybinding.

    Dans le <KeyBindings> en créant un <KeyBinding> entrée.In the <KeyBindings> section, create a <KeyBinding> entry.

    Définir le guid et id des attributs à celles de la commande que vous souhaitez appeler.Set the guid and id attributes to those of the command you want to invoke.

    Définir le mod1 attribut contrôle, Alt, ou MAJ.Set the mod1 attribute to Control, Alt, or Shift.

    La section des combinaisons de touches doit ressembler à ceci :The KeyBindings section should look something like this:

    <KeyBindings>  
        <KeyBinding guid="<name of command set>" id="<name of command id>"  
            editor="guidVSStd97" key1="1" mod1="CONTROL"/>  
    </KeyBindings>  
    

    Si votre raccourci clavier requiert plus de deux touches, définir le mod2 et key2 attributs.If your keyboard shortcut requires more than two keys, set the mod2 and key2 attributes.

    Dans la plupart des cas, MAJ ne doit pas être utilisé sans un modificateur deuxième car en appuyant sur déjà entraîne la plupart des touches alphanumériques permettant de taper une lettre majuscule ou un symbole.In most situations, Shift should not be used without a second modifier because pressing it already causes most alphanumeric keys to type an uppercase letter or a symbol.

    Les codes de touche virtuelle vous permettent d’accéder à des touches spéciales qui n’ont pas un caractère associé, par exemple, les touches de fonction et la RET clé.Virtual-key codes let you access special keys that do not have a character associated with them, for example, function keys and the BACKSPACE key. Pour plus d’informations, consultez Virtual-Key Codes.For more information, see Virtual-Key Codes.

    Pour rendre la commande disponible dans Visual Studio éditeur, définissez la editor attribut guidVSStd97.To make the command available in the Visual Studio editor, set the editor attribute to guidVSStd97.

    Pour rendre la commande disponible uniquement dans un éditeur personnalisé, définissez la editor nom à l’attribut de l’éditeur personnalisé qui a été généré par le Visual StudioVisual Studio modèle de Package lorsque vous avez créé le package Visual Studio qui inclut l’éditeur personnalisé.To make the command available only in a custom editor, set the editor attribute to the name of the custom editor that was generated by the Visual StudioVisual Studio Package Template when you created the VSPackage that includes the custom editor. Pour rechercher la valeur de nom, recherchez dans le <Symbols> section pour un <GuidSymbol> nœud dont name attribut se termine par «editorfactory. » Il s’agit du nom de l’éditeur personnalisé.To find the name value, look in the <Symbols> section for a <GuidSymbol> node whose name attribute ends in "editorfactory." This is the name of the custom editor.

ExempleExample

Cet exemple lie le raccourci clavier CTRL + ALT + C à une commande nommée cmdidMyCommand dans un package appelé MyPackage.This example binds the keyboard shortcut CTRL+ALT+C to a command named cmdidMyCommand in a package named MyPackage.

<CommandTable>  
. . .  
<Commands>  
. . .  
</Commands>  
<KeyBindings>  
  <KeyBinding guid="guidMyPackageCmdSet" id="cmdidMyCommand"   
      key1="C" mod1="CONTROL" mod2="ALT" editor="guidVSStd97" />  
</KeyBindings>  
. . .  
</CommandTable>  

ExempleExample

Cet exemple lie le raccourci clavier CTRL + B à une commande nommée cmdidBold dans un projet nommé TestEditor.This example binds the keyboard shortcut CTL+B to a command named cmdidBold in a project named TestEditor. La commande est disponible uniquement dans l’éditeur personnalisé et pas d’autres éditeurs.The command is available only in the custom editor and not in other editors.

<KeyBinding guid="guidVSStd97" id="cmdidBold" editor="guidTestEditorEditorFactory" key1="B" mod1="Control" />  

Voir aussiSee Also

Extension des menus et des commandesExtending Menus and Commands