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

  1. 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

<Previous Next>