Best practices voor toegankelijkheid
Notitie
Dit artikel is bedoeld voor .NET Framework-ontwikkelaars die de beheerde UI Automation-klassen willen gebruiken die zijn gedefinieerd in de System.Windows.Automation naamruimte. Zie Windows Automation-API: UI Automation voor de meest recente informatie over UI Automation.
Het implementeren van de volgende aanbevolen procedures in besturingselementen of toepassingen verbetert hun toegankelijkheid voor mensen die ondersteunende technologieapparaten gebruiken. Veel van deze aanbevolen procedures richten zich op een goed gebruikersinterfaceontwerp (UI). Elke best practice omvat implementatie-informatie voor WPF-besturingselementen (Windows Presentation Foundation) of toepassingen. In veel gevallen is het werk om aan deze aanbevolen procedures te voldoen al opgenomen in WPF-besturingselementen.
Toegang op programmeerniveau
Programmatische toegang houdt in dat alle UI-elementen worden gelabeld, eigenschapswaarden worden weergegeven en dat de juiste gebeurtenissen worden gegenereerd. Voor standaard WPF-besturingselementen wordt het grootste deel van dit werk al uitgevoerd.AutomationPeer Voor aangepaste besturingselementen is extra werk vereist om ervoor te zorgen dat programmatische toegang correct wordt geïmplementeerd.
Programmatische toegang tot alle ui-elementen en tekst inschakelen
Gebruikersinterface-elementen moeten programmatische toegang inschakelen. Als de gebruikersinterface een standaard WPF-besturingselement is, wordt ondersteuning voor programmatische toegang opgenomen in het besturingselement. Als het besturingselement een aangepast besturingselement is , een besturingselement dat is subklassen van een gemeenschappelijk besturingselement of een besturingselement dat is ingedeeld vanuit Control , moet u de AutomationPeer implementatie controleren op gebieden die mogelijk moeten worden gewijzigd.
Door deze best practice te volgen, kunnen leveranciers van ondersteunende technologie elementen van de gebruikersinterface van uw product identificeren en bewerken.
Plaatsnamen, titels en beschrijvingen voor UI-objecten, frames en pagina's
Ondersteunende technologieën, met name schermlezers, gebruiken de titel om inzicht te krijgen in de locatie van het frame, object of pagina in het navigatieschema. Daarom moet de titel beschrijvend zijn. Een webpaginatitel van 'Microsoft-webpagina' is bijvoorbeeld nutteloos als de gebruiker diep in een bepaald gebied heeft genavigeerd. Een beschrijvende titel is essentieel voor gebruikers die blind zijn en afhankelijk zijn van schermlezers. Op dezelfde manier zijn wpf-besturingselementen NamePropertyHelpTextProperty belangrijk voor ondersteunende technologieapparaten.
Door deze best practice te volgen, kunnen ondersteunende technologieën de gebruikersinterface identificeren en bewerken in voorbeeldbesturingselementen en toepassingen.
Ervoor zorgen dat programmatische gebeurtenissen worden geactiveerd door alle UI-activiteiten
Door deze best practice te volgen, kunnen ondersteunende technologieën luisteren naar wijzigingen in de gebruikersinterface en de gebruiker op de hoogte stellen van deze wijzigingen.
Gebruikersinstellingen
De aanbevolen procedure in deze sectie zorgt ervoor dat besturingselementen of toepassingen gebruikersinstellingen niet overschrijven.
Respecteer alle systeembrede Instellingen en interfereer niet met toegankelijkheidsfuncties
Gebruikers kunnen de Configuratiescherm gebruiken om bepaalde systeembrede vlaggen in te stellen; andere vlaggen kunnen programmatisch worden ingesteld. Deze instellingen mogen niet worden gewijzigd door besturingselementen of toepassingen. Bovendien moeten toepassingen de toegankelijkheidsinstellingen van hun hostbesturingssysteem ondersteunen.
Door deze best practice te volgen, kunnen gebruikers toegankelijkheidsinstellingen instellen en weten dat deze instellingen niet door toepassingen worden gewijzigd.
Ontwerp van visuele gebruikersinterface
Aanbevolen procedures in deze sectie zorgen ervoor dat besturingselementen of toepassingen effectief kleur en afbeeldingen gebruiken en kunnen worden gebruikt door ondersteunende technologieën.
Geen hardcodekleuren
Mensen die kleurenblind zijn, slechtziend zijn of een zwart-wit scherm gebruiken, kunnen toepassingen met in code vastgelegde kleuren mogelijk niet gebruiken.
Door deze best practice te volgen, kunnen gebruikers kleurcombinaties aanpassen op basis van individuele behoeften.
Ondersteuning voor hoog contrast en alle systeemweergavekenmerken
Toepassingen mogen door de gebruiker geselecteerde instellingen, instellingen voor contrast in het hele systeem, kleurselecties of andere weergave-instellingen en kenmerken voor het hele systeem niet verstoren of uitschakelen. Systeembrede instellingen die door een gebruiker worden gebruikt, verbeteren de toegankelijkheid van toepassingen, zodat ze niet door toepassingen mogen worden uitgeschakeld of genegeerd. Kleur moet worden gebruikt in de juiste combinatie van voorgrond-op-achtergrond om het juiste contrast te bieden. Meng geen niet-gerelateerde kleuren en geen omgekeerde kleuren.
Veel gebruikers hebben specifieke combinaties met hoog contrast nodig, zoals witte tekst op een zwarte achtergrond. Als u deze omgekeerd tekent, omdat zwarte tekst op een witte achtergrond ervoor zorgt dat de achtergrond over de voorgrond bloedt en het lezen voor sommige gebruikers lastig maakt.
Zorg ervoor dat alle gebruikersinterface correct wordt geschaald op elke DPI-instelling
Zorg ervoor dat alle gebruikersinterfaces correct kunnen worden geschaald door een dpi-instelling (dots per inch). Zorg er ook voor dat ui-elementen passen in een scherm van 1024 x 768 met 120 dots per inch (dpi).
Navigatie
Aanbevolen procedures in deze sectie zorgen ervoor dat navigatie is geadresseerd voor besturingselementen en toepassingen.
Toetsenbordinterface opgeven voor alle UI-elementen
Tabstops, met name wanneer ze zorgvuldig zijn gepland, bieden gebruikers een andere manier om door de gebruikersinterface te navigeren.
Toepassingen moeten de volgende toetsenbordinterfaces bieden:
- tabstops voor alle besturingselementen waarmee de gebruiker kan communiceren, zoals knoppen, koppelingen of keuzelijsten
- logische tabvolgorde
De toetsenbordfocus weergeven
Gebruikers moeten weten welk object de toetsenbordfocus heeft, zodat ze kunnen anticiperen op het effect van hun toetsaanslagen. Als u de focus van het toetsenbord wilt markeren, gebruikt u kleuren, lettertypen of afbeeldingen, zoals rechthoeken of vergroting. Als u de toetsenbordfocus wilt markeren, wijzigt u het volume, de toonhoogte of de tonale kwaliteit.
Om verwarring te voorkomen, moeten toepassingen alle visuele focusindicatoren en dimselecties verbergen die zich in inactieve vensters (of deelvensters) bevinden.
Toepassingen moeten het volgende doen met de toetsenbordfocus:
- één item moet altijd de toetsenbordfocus hebben
- toetsenbordfocus moet zichtbaar en duidelijk zijn
- selecties en/of gerichte items moeten visueel worden gemarkeerd
Ondersteuning voor navigatiestandaarden en krachtige navigatieschema's
Verschillende aspecten van toetsenbordnavigatie bieden verschillende manieren waarop gebruikers door de gebruikersinterface kunnen navigeren.
Toepassingen moeten de volgende toetsenbordinterfaces bieden:
- sneltoetsen en onderstreepte toegangstoetsen voor alle opdrachten, menu's en besturingselementen
- sneltoetsen naar belangrijke koppelingen
- alle menu-items hebben een toegangssleutel; alle knoppen hebben acceleratortoetsen, alle opdrachten hebben een acceleratortoets.
Muislocatie niet laten verstoren door toetsenbordnavigatie
Muislocatie mag geen invloed hebben op toetsenbordnavigatie. Als de muis bijvoorbeeld op een bepaalde plaats staat en de gebruiker met het toetsenbord navigeert, moet er geen muisklik plaatsvinden, tenzij deze door de gebruiker wordt gestart.
Multimodale interface
Aanbevolen procedures in deze sectie zorgen ervoor dat de gebruikersinterface van toepassingen alternatieven bevat voor visuele elementen.
Door de gebruiker te selecteren equivalenten opgeven voor niet-tekstelementen
Geef voor elk niet-tekstelement een door de gebruiker te selecteren equivalent op voor tekst, transcripties of audiobeschrijvingen, zoals alternatieve tekst, onderschrift s of visuele feedback.
Niet-tekstelementen hebben betrekking op een breed scala aan UI-elementen, waaronder: afbeeldingen, afbeeldingskaartgebieden, animaties, applets, frames, scripts, grafische knoppen, geluiden, zelfstandige audiobestanden en video. Niet-tekstelementen zijn belangrijk wanneer ze visuele informatie, spraak of algemene audio-informatie bevatten waartoe de gebruiker toegang nodig heeft om inzicht te krijgen in de inhoud van de gebruikersinterface.
Kleur gebruiken, maar ook alternatieven bieden voor kleur
Gebruik kleur om informatie die op andere manieren wordt weergegeven te verbeteren, benadrukken of herhalen, maar niet alleen met kleur te communiceren. Gebruikers die kleurenblind zijn of een monochrome display hebben, hebben alternatieven nodig voor kleur.
Standaardinvoer-API's gebruiken met apparaatonafhankelijke aanroepen
Apparaatonafhankelijke aanroepen zorgen voor gelijkheid van toetsenbord- en muisfuncties en bieden ondersteunende technologie met benodigde informatie over de gebruikersinterface.