Ordre de tabulation, focus et touches d'accès rapide dans les contrôles serveur Web ASP.NET
Mise à jour : novembre 2007
Pour améliorer l'expérience utilisateur de l'utilisation de contrôles dans des pages Web ASP.NET, vous pouvez spécifier l'ordre dans lequel les utilisateurs peuvent se déplacer par tabulation entre des contrôles serveur Web ASP.NET et spécifier le contrôle sur la page qui a le focus lorsque la page est initialement ouverte.
Ordre de tabulation
Lorsque les pages sont affichées dans le navigateur, les utilisateurs peuvent utiliser une touche TAB (TAB et MAJ+TAB dans Windows) pour déplacer le focus/la sélection de contrôle en contrôle sur la page. Dans la plupart des navigateurs, l'ordre de tabulation des contrôles correspond, par défaut, à l'ordre dans lequel ils apparaissent sur la page, de l'angle supérieur gauche à l'angle inférieur droit de la page.
Vous pouvez contrôler l'ordre de tabulation des contrôles en définissant leur propriété TabIndex. Lorsque les contrôles sont restitués, la valeur TabIndex est restituée dans l'attribut pour le navigateur requis pour prendre en charge la tabulation. Dans Internet Explorer, par exemple, la valeur TabIndex est restituée comme attribut tabindex d'un élément sur la page.
L'ordre de tabulation monte de façon séquentielle, de telle sorte que lorsqu'un utilisateur part d'un contrôle avec une propriété TabIndex de 3, le focus atteint ensuite le contrôle avec une valeur TabIndex de 4 (ou plus). Dans beaucoup de navigateurs, y compris Internet Explorer, l'ordre de tabulation inclut les contrôles situés sur la barre d'outils du navigateur.
La touche TAB suffit à déclencher, avec certains contrôles, l'exécution d'une publication. Par exemple, si vous affectez true à la propriété AutoPostBack d'un contrôle TextBox, la page sera republiée dès lors que vous sortirez de la zone de texte contenant le texte modifié.
Focus
Lorsqu'une page est restituée sur le navigateur, celui-ci détermine le contrôle qui doit avoir le focus. Dans la plupart des cas, le navigateur place d'abord le focus sur la fenêtre du navigateur elle-même ou sur le premier contrôle de la page. Cela s'avère exact même après une publication, car la page est à nouveau créée sur le serveur et le navigateur la considère comme une nouvelle page. (Une exception est levée après une publication provoquée par une touche TAB, comme expliqué précédemment dans la section « Ordre de tabulation » de cette rubrique.)
S'il est important que le focus soit sur un contrôle spécifique dans votre application, vous pouvez définir le focus sur un contrôle à partir du code serveur. Pour plus d'informations, consultez Comment : définir le focus sur des contrôles serveur Web ASP.NET.
Tous les contrôles ne peuvent pas recevoir le focus. Vous pouvez définir le focus sur chacun des éléments suivants :
Si un contrôle est masqué, il ne peut pas recevoir le focus. Si vous définissez le focus sur un contrôle qui ne peut pas recevoir le focus directement mais qui a des contrôles enfants qui peuvent recevoir le focus, le premier contrôle enfant recevra le focus. Par exemple, si vous définissez le focus sur le contrôle Login, la première zone de texte située à l'intérieur du contrôle Login recevra le focus.
Touches d'accès rapide
Outre la prise en charge de l'ordre de tabulation dans vos pages Web ASP.NET, vous pouvez ajouter la prise en charge des touches d'accès rapide. Une touche d'accès rapide permet aux utilisateurs d'accéder à un contrôle spécifique sur la page en appuyant sur la touche ALT plus une autre touche (par exemple, ALT+S), sans utiliser la souris.
Pour plus d'informations, consultez Comment : définir des touches d'accès rapide pour des contrôles serveur Web ASP.NET.