Microsoft Windows UI Automation Blog
The Microsoft Windows UI Automation blog covers topics related to the the Windows Automation API
Building accessible Windows Universal apps: Programmatic accessibility
This series of posts describes how to avoid some common accessibility bugs when building Windows...
Author: Guy Barker MSFT Date: 07/14/2015
Building accessible Windows Universal apps: Colors and contrast
This series of posts describes how to avoid some common accessibility bugs when building Windows...
Author: Guy Barker MSFT Date: 07/14/2015
Building accessible Windows Universal apps: Keyboard accessibility
This series of posts describes how to avoid some common accessibility bugs when building Windows...
Author: Guy Barker MSFT Date: 07/14/2015
Building accessible Windows Universal apps: Introduction
This series of posts describes how to avoid some common accessibility bugs when building Windows...
Author: Guy Barker MSFT Date: 07/14/2015
Can I tell Narrator how I want a particular character to be pronounced?
Someone recently raised the interesting point that they found the Narrator screen reader pronounces...
Author: Guy Barker MSFT Date: 05/27/2015
I’ll say this only once - Your customers need an efficient experience
This post describes a simple step that you can take to help your customers who are blind, such that...
Author: Guy Barker MSFT Date: 05/18/2015
When you work your focus hocus pocus, don’t leave your customers behind
This post describes how your customers may need your custom control to raise a UIA FocusChanged...
Author: Guy Barker MSFT Date: 05/11/2015
How and why I added an on-screen keyboard to my Windows Store app
This post describes how I added an alphabetically sorted on-screen keyboard to my 8 Way Speaker app,...
Author: Guy Barker MSFT Date: 04/26/2015
Let your customers know what's going on by leveraging the XAML LiveSetting property
Your customers who are blind or have low vision use screen readers like Narrator to inform them of...
Author: Guy Barker MSFT Date: 03/24/2015
Giving your XAML element an accessible name: Part 3 – Other interesting ways
- Set the accessible name for an element from the accessible name of another element Sometimes you...
Author: Guy Barker MSFT Date: 03/19/2015
Giving your XAML element an accessible name: Part 2 – Set the AutomationProperties.Name
The AutomationProperties class is a really, really handy way to set some accessibility-related...
Author: Guy Barker MSFT Date: 03/19/2015
Giving your XAML element an accessible name: Part 1 - Introduction
If your XAML UI element has an "accessible name" then your customers who use a screen reader, (such...
Author: Guy Barker MSFT Date: 03/19/2015
Generating your own interop dll for calling the Windows UIA API from C# code
I was recently asked where an interop dll can be found, so that an app’s C# code can call into...
Author: Guy Barker MSFT Date: 03/17/2015
Too much fun at CSUN! Part 6: And not forgetting... Herbi Clicker - Efficiently invoking anything on the screen with the keyboard (Windows Desktop app, WinForms/C#)
After I’d demo’d four of my apps at CSUN, I was asked about how an app might allow...
Author: Guy Barker MSFT Date: 03/08/2015
Too much fun at CSUN! Part 5: Herbi Speaks - Creating boards for education or communication (Windows Desktop app, WinForms/C#)
While looking for new ways of testing input at my 8 Way Speaker app, I got in contact with an...
Author: Guy Barker MSFT Date: 03/08/2015
Too much fun at CSUN! Part 4: My Way Speaker - Browsing the web with a switch device (Windows Desktop app, WinForms/C#)
A Rehabilitation Engineer who’d given me valuable feedback on my 8 Way Speaker app, let me...
Author: Guy Barker MSFT Date: 03/08/2015
Too much fun at CSUN! Part 3: 8 Way Speaker - Controlling speech output in many different ways for communication (Windows Store app, HTML/js)
A while ago I spent some time with a gentleman who was blind and had MND/ALS. (I described an...
Author: Guy Barker MSFT Date: 03/08/2015
Too much fun at CSUN! Part 2: Herbi WriteAbout - Handwriting development (Windows Store app, XAML/C#)
I started working on an app to help with handwriting development back in 2006, when an Occupational...
Author: Guy Barker MSFT Date: 03/08/2015
Too much fun at CSUN! Part 1: Demo’ing four assistive technology apps for Windows at CSUN 2015
Last week I had a blast! I had the opportunity to demo four of the apps that I’ve built in my...
Author: Guy Barker MSFT Date: 03/08/2015
Using UI Automation to enable web browsing with a switch device
This post describes how I used the Windows UI Automation (UIA) API in a Windows Forms app, in order...
Author: Guy Barker MSFT Date: 12/27/2014
Does your XAML UI support the Patterns that your customer needs?
This post encourages you to let the XAML Framework do lots of the work required to make your UI...
Author: Guy Barker MSFT Date: 10/11/2014
A recipe for an exciting assistive technology app: Throw three UIA samples together and stir vigorously!
Hi, Last week I had an interesting discussion with someone who has experience in the Education...
Author: Guy Barker MSFT Date: 06/25/2014
Allowing Narrator gestures to zoom at the explorable map
While making the demo video associated with Updating the explorable map to add support for scrolling...
Author: Guy Barker MSFT Date: 06/18/2014
Updating the explorable map to add support for scrolling with a screen reader
I recently had some fun building an app which presents a map, and when a Narrator user touches the...
Author: Guy Barker MSFT Date: 06/15/2014
Using UI Automation to explore a map
A few weeks ago I was having coffee with a colleague who’s blind, and I asked him about...
Author: Guy Barker MSFT Date: 06/09/2014
Solutions to some common accessibility issues found in XAML apps
My recent post, Learn about cool things you can do with UI Automation, and help teams around you at...
Author: Guy Barker MSFT Date: 05/05/2014
Learn about cool things you can do with UI Automation, and help teams around you at the same time
We can use the Windows UI Automation (UIA) API to build some really interesting tools which can help...
Author: Guy Barker MSFT Date: 05/05/2014
More tips on the use of LiveRegions in your WinJS app
Hi, A while back I described some of my experiences with LiveRegions in a WinJS app, at...
Author: Guy Barker MSFT Date: 10/25/2013
An accessibility case study - Reading List. Part 6: Using Narrator with touch input only
This post discusses accessibility considerations around the use of touch input to control the...
Author: Guy Barker MSFT Date: 08/04/2013
An accessibility case study - Reading List. Part 5: Live Regions
This post discusses accessibility considerations around the use of Live Regions in the Reading List...
Author: Guy Barker MSFT Date: 08/04/2013
An accessibility case study - Reading List. Part 4: Programmatic accessibility
This post discusses accessibility considerations around programmatic accessibility of the Reading...
Author: Guy Barker MSFT Date: 08/04/2013
An accessibility case study - Reading List. Part 3: Keyboard accessibility
This post discusses accessibility considerations around keyboard accessibility of the Reading List...
Author: Guy Barker MSFT Date: 08/04/2013
An accessibility case study - Reading List. Part 2: Colours and Contrast
This post discusses accessibility considerations around colours and contrast shown in the UI of the...
Author: Guy Barker MSFT Date: 08/04/2013
An accessibility case study - Reading List. Part 1: Introduction
Reading List is an app introduced with the Windows 8.1 Preview. During development of the app, the...
Author: Guy Barker MSFT Date: 08/04/2013
How UI Automation helped me build a tool for a user who’s blind and who has MND/ALS
Hi, I’m a strong believer that if a developer has a friend or family member that would benefit...
Author: Guy Barker MSFT Date: 07/01/2013
Reusing one of your strings shown visually in your Windows 8 app as the accessible name for another element
The XAML and WinJS UI frameworks do some great things for the default accessibility of your Windows...
Author: Guy Barker MSFT Date: 05/19/2013
Customizing the accessibility of my XAML and WinJS Windows 8 apps – Part 4: Postscript
Customizing the accessibility of my XAML and WinJS Windows 8 apps – Part 4: PostscriptGuy...
Author: Guy Barker MSFT Date: 04/11/2013
Customizing the accessibility of my XAML and WinJS Windows 8 apps – Part 3: The WinJS app
Customizing the accessibility of my XAML and WinJS Windows 8 apps – Part 3: The WinJS appGuy...
Author: Guy Barker MSFT Date: 04/02/2013
Customizing the accessibility of my XAML and WinJS Windows 8 apps – Part 2: The XAML app
Customizing the accessibility of my XAML and WinJS Windows 8 apps – Part 2: The XAML appGuy...
Author: Guy Barker MSFT Date: 04/02/2013
Customizing the accessibility of my XAML and WinJS Windows 8 apps – Part 1: Introduction
Customizing the accessibility of my XAML and WinJS Windows 8 apps – Part 1: IntroductionGuy...
Author: Guy Barker MSFT Date: 04/02/2013
What can I do to make my Windows 8 WinJS.UI.ListView app as accessible as possible?
I recently spent five years working in the Windows Accessibility team, working on most of the...
Author: Guy Barker MSFT Date: 02/20/2013
One story of building a useful Assistive Technology tool from a UI Automation sample
Background At the 2011 Annual International Technology and Persons with Disabilities Conference (aka...
Author: Guy Barker MSFT Date: 09/08/2012
Using Dynamic Annotation with Child IDs
The Dynamic Annotation API in the Windows Automation API is a convenient way to make simple...
Author: Michael Bernstein Date: 04/24/2012
Windows 7 UI Automation Client API C# sample (e-mail reader) Version 1.1
I recently built a very simple C# app which uses the Windows 7 native-code UI Automation (UIA) API...
Author: Guy Barker MSFT Date: 03/17/2012
Windows 7 UI Automation Client API C# sample (e-mail reader) Version 1.0
In preparation for a demo of the native-code Windows UI Automation (UIA) API last year, I built a...
Author: Guy Barker MSFT Date: 03/05/2012
A UI Automation Bar Chart Sample
https://code.msdn.microsoft.com/C-Windows-7-UIA-Provider-af7a6e31 In an earlier blog I described how...
Author: Guy Barker MSFT Date: 05/18/2011
Building UI Automation client applications in C++ and C#
Sample #1: https://code.msdn.microsoft.com/Windows-7-UI-Automation-9131f729 Back in March I had the...
Author: Guy Barker MSFT Date: 05/18/2011
What does a UIA provider get for free?
A colleague asked me recently, “Why do I have to implement a bounding rectangle for each of my UIA...
Author: Michael Bernstein Date: 05/10/2011