Limitations relatives à l’accessibilité dans des applications canevas

Tu peux concevoir et créer des applications canevas accessibles avec commandes intégrées. Parfois, la combinaison de la conception de l’application, de l’utilisation de divers contrôles et des propriétés de contrôle configurées peut amener une application à avoir une interface utilisateur inaccessible.

Dans cet article, vous découvrirez ces limitations d’accessibilité dans les applications canevas et comment vous pouvez améliorer l’interface de l’application pour la rendre plus accessible.

Boîtes de dialogue et superpositions

Les boîtes de dialogue et les interfaces utilisateur qui apparaissent au-dessus d’autres contenus ne sont pas prises en charge. Ces superpositions nécessitent une gestion de la mise au point, le masquage du contenu d’arrière-plan des lecteurs d’écran et des rôles de contrôle appropriés.

Prenez en compte les éléments suivants :

  • Utilisez des écrans séparés pour chaque "boîte de dialogue".
  • Utilisez la fonction Notify .
  • Créez un composant de code qui implémente une boîte de dialogue accessible.

Interfaces à onglets

Une interface avec onglets est composée d’une liste d’onglets et d’un volet qui affiche le contenu associé à l’onglet sélectionné.

Le seul contrôle intégré qui prend en charge les interfaces avec onglets est la liste d’onglets. Évitez d’utiliser les galeries pour créer des onglets. La liste d’onglets doit être navigable avec les touches fléchées. Des rôles et des états de contrôle appropriés sont nécessaires.

Prenez en compte les éléments suivants :

Tables personnalisées

Le seul contrôle intégré qui prend en charge les données bidimensionnelles est la Table de données. Évitez d’utiliser Galeries pour présenter les données en lignes et en colonnes. Les lignes et les colonnes doivent être annotées afin que les utilisateurs de l’écran Lecteur puissent comprendre leur structure et naviguer dans les cellules.

Prenez en compte les éléments suivants :

Zones de liste déroulante personnalisées

Il est possible d’émuler une zone de liste déroulante en combinant une Saisie de texte et une Galerie. Cependant, les zones de liste déroulante assemblées à partir de commandes intégrées ne sont pas accessibles. Les zones de liste déroulante doivent gérer les touches fléchées et définir les rôles et les états appropriés sur ses composants.

Prenez en compte les éléments suivants :

Contenu pouvant défiler

Les utilisateurs de clavier ne peuvent pas faire défiler les formulaires, les Écrans déroulants et les Conteneurs s’il n’y a pas de contrôles interactifs à l’intérieur.

Pour les Galeries sans contenu interactif, vous pouvez définir TabIndex sur la Galerie elle-même afin que les utilisateurs du clavier puissent se concentrer dessus et utiliser les touches fléchées pour la faire défiler.

Pour les Étiquettes, le paramètre TabIndex les rendra focalisables pour le défilement du clavier. Cependant, il les transformera également en boutons. Ne faites pas défiler les Étiquettes si elles ne sont pas censées être des boutons. Assurez-vous que Étiqueter est suffisamment grand pour contenir du texte. La propriété AutoHeight peut être utilisée pour ajuster automatiquement la taille du contrôle lorsqu’il se trouve à l’intérieur d’un Formulaire, Écran déroulant ou Galerie.

Sections extensibles

Les sections extensibles, également appelées divulgations, contiennent du contenu masqué jusqu’à ce que l’utilisateur appuie sur un bouton. Il n’y a pas de prise en charge intégrée pour ces éléments, mais il existe une solution de contournement.

Mentionnez l’état étendu dans l’étiquette AccessibleLabel du bouton. Par exemple, "Afficher plus de détails. Réduit.".

Mettez à jour l’étiquette AccessibleLabel lorsque l’état étendu change. Positionnez le contenu développé immédiatement après le bouton pour que les utilisateurs de l’écran Lecteur puissent y accéder logiquement. Poussez d’autres contenus vers le bas lorsque la section se développe.

Repères

Vous pouvez créer des en-têtes avec les contrôles Étiqueter. La navigation, la bannière et les autres points de repère ne sont pas pris en charge. Power Apps définit automatiquement le repère principal sur l’écran de l’application.

Pour les autres points de repère, utilisez un titre comme solution de contournement.

Rôles et états personnalisés

Il n’y a pas de prise en charge intégrée des rôles et des états personnalisés. Par conséquent, il n’est pas recommandé de créer des cases à cocher, des curseurs et des bascules composites à partir des contrôles intégrés.

Prenez en compte les éléments suivants :

  • Mentionner le rôle et l’état du contrôle dans son Étiquette AccessibleLabel. Par exemple, si une Icône est utilisée comme une case à cocher, son étiquette pourrait être une case à cocher "Activer les notifications. . Activée.".
  • Créez un composant de code qui définit les rôles ARIA et déclare comme approprié.

Gestion du clavier personnalisé

Il n’est pas possible de réagir à des pressions sur des touches spécifiques. Par exemple, vous ne pouvez pas avoir de comportement personnalisé pour les touches fléchées ou la touche Échap. Par conséquent, il n’est pas possible de composer des contrôles de type liste comme des boutons radio à partir de contrôles intégrés. Vous ne pouvez pas non plus créer de superpositions qui peuvent être supprimées avec la touche Échap.

La gestion des touches Entrée ou Espace est prise en charge avec OnSelect. Cependant, cette propriété est également déclenchée par d’autres méthodes de saisie telles que les clics de souris. Il n’y a aucun moyen de distinguer la source de l’événement.

Gestion de la mise au point

La fonction SetFocus peut être utilisée pour changer le focus, mais cela ne fonctionne que dans les scénarios limités.

Il n’est pas possible de détecter quand les commandes reçoivent ou perdent la mise au point.

Masquer le contenu de l’écran pour les utilisateurs Lecteur uniquement

Il n’y a pas aria-hidden équivalent pour montrer le contenu aux utilisateurs voyants mais le cacher pour les utilisateurs de lecteurs d’écran. Seuls quelques scénarios sont pris en charge.

Étapes suivantes

Propriétés d’accessibilité

Voir aussi