Ajouter un raccourci de touche d’accès à un contrôle (Windows Forms .NET)

Une touche d’accès est un caractère souligné dans le texte d’un menu, d’un élément de menu ou de l’étiquette d’un contrôle tel qu’un bouton. Avec une touche d’accès, l’utilisateur peut « cliquer » sur un bouton en appuyant sur la touche Alt en combinaison avec la touche d’accès prédéfinie. Par exemple, si un bouton exécute une procédure pour imprimer un formulaire et que sa Text propriété est définie sur « Imprimer », ajout d’un ampersand (&) avant la lettre « P » entraîne le soulignement de la lettre « P » dans le texte du bouton au moment de l’exécution. L’utilisateur peut exécuter la commande associée au bouton en appuyant sur Alt.

Les contrôles qui ne peuvent pas recevoir le focus ne peuvent pas avoir de clés d’accès, à l’exception des contrôles d’étiquette.

Important

La documentation du Guide du bureau pour .NET 7 et .NET 6 est en cours de construction.

Designer

Dans la fenêtre Propriétés de Visual Studio, définissez la propriété Text sur une chaîne qui inclut un ampersand (&) avant la lettre qui sera la clé d’accès. Par exemple, pour définir la lettre « P » comme clé d’accès, entrez &Print.

Properties dialog with text property selected and access key

Par programme

Définissez la Text propriété sur une chaîne qui inclut un ampersand (&) avant la lettre qui sera le raccourci.

' Set the letter "P" as an access key.
Button1.Text = "&Print"
// Set the letter "P" as an access key.
button1.Text = "&Print";

Utiliser une étiquette pour concentrer un contrôle

Même si une étiquette ne peut pas être axée, elle a la possibilité de concentrer le contrôle suivant dans l’ordre de tabulation du formulaire. Chaque contrôle reçoit une valeur à la propriété, généralement dans l’ordre TabIndex séquentiel croissant. Lorsque la clé d’accès est affectée à la propriété Label.Text , le contrôle suivant dans l’ordre de tabulation séquentiel est concentré.

À l’aide de l’exemple de la section Programmatique , si le bouton n’a pas de texte défini, mais présenté plutôt une image d’imprimante, vous pouvez utiliser une étiquette pour concentrer le bouton.

' Set the letter "P" as an access key.
Label1.Text = "&Print"
Label1.TabIndex = 9
Button1.TabIndex = 10
// Set the letter "P" as an access key.
label1.Text = "&Print";
label1.TabIndex = 9
button1.TabIndex = 10

Afficher un ampersand

Lorsque vous définissez le texte ou légende d’un contrôle qui interprète un ampersand (&) en tant que clé d’accès, utilisez deux ampersands consécutifs (&) pour afficher un seul ampersand. Par exemple, le texte d’un bouton défini pour "Print && Close" s’afficher dans la légende de Print & Close:

' Set the letter "P" as an access key.
Button1.Text = "Print && Close"
// Set the letter "P" as an access key.
button1.Text = "Print && Close";

displaying an ampersand in a button

Voir aussi