Professional Documents
Culture Documents
• Ensure that programs and functionality are easily available to the widest range of users,
including those who have disabilities and impairments.
• Approaching software for accessibility often results in overall improved usability and customer
satisfaction.
Types of assistive technologies and
accessibility features
• Screen Reader
• Keyboard based Navigation
• Narrator
• Visual settings and color schemes
• Magnifier
• Speech recognition
• On-screen keyboard
How to use Assistive technologies
Keyboard based Navigation
Current Flow
Keyboard (Issues and Fixes)
Issue Fixes
• Initial Focus not on most • Re arrange UI to reflect logical flow.
primary action. • Programmatically move focus to primary action.
• Tab order not very helpful
•
Narrator (Issues and Fixes)
Fixes
Issue • Set up proper automation properties on the
• Meaningful name not read UIElement.
out for UIElements. ( This is
the major culprit in
accessibility bugs).
• Use AutomationProperties.HelpText to give more
information about the UIControl.
• Use tools like Keros to early identify this bug.
Narrator (Issues and Fixes)
Fixes
Issue • Use RaiseNotificationEvent to notify narrator
• Event completion not about events.
notified to user.
• Add a high contrast-only border where necessary to preserve important boundaries in your UI.
• Use colors in generic.xaml to have better understanding of exact color codes used by system.
High Contrast (Issues and Fixes)
Issue Fixes
• High contrast not followed • In case of default implementation, Also declare an
implementation for High Contrast if the high
contrast experience is getting affected by Default
Settings.
• Use ResourceDictionary to define settings for High
Contrast.
Learnings
• Logical flow for accessibility should be decided by designers at start
itself.
• Narrator experience for each experience should be finalized at start
itself.
• Proper color codes to be decided at start itself.
• Along with main experience, Experience for High Contrast should be
finalized.
Custom Controls
• Use Xaml default controls as maximum as possible.
• In case of using custom control, support proper AutomationPeers for Custom Contro. E.g. ManipulatorControl in Layout App
Accessibility Testing tools
• Keros for narrator.
• Color code analyzer for Luminosity
• Test keyboard accessibility
Accessibility Checklist
• We have our own check list for Accessibility.