Skip to content

Internationalization and Accessibility

Peter Smith edited this page Dec 7, 2018 · 4 revisions

The BITS Manager program was designed to be used by people with different abilities. From a technical point of view, the following steps were taken

  1. All user-interface strings are placed in a resource file (Resources.resx). Translations are placed into files with an embedded two-letter language code like Resources.ex.resx. In C# code, these are retrieved through the Properties.Resources class. In XAML code, a “p” xmlns namespace reference is added (xmlns:p="clr-namespace:BITSManager.Properties") and value retrieved like this: Text="{x:Static p:Resources.DialogUrl}". Strings that are used internally in the code and are not shown to the user are not placed in the resource file.
  2. Text values can all wrap and controls are designed with enough room for different languages.
  3. Output data that includes numbers and dates (like the Job created time” and number of bytes and files downloaded) are displayed using the current culture. In particular, integer values are displayed with the “N0” format and dates are displayed with the “F” format.
  4. The tab order of the different buttons was set and then verified manually. All aspects of the user interface should be accessible via the keyboard.
  5. Default colors were picked for all UI elements. This ensures that the output has sufficient contrast and is available to people who are color blind.

There’s plenty of further reading on accessibility and globalization on the Microsoft web sites.

Clone this wiki locally