An application write should aim for making sure that all their users have good experience usign their application. Often times while designing the UI of an application developers dont think that some of the users may be visually impaired. Following are some of the guidelines which one can use while designing the UI of an application.

    1. Use standard windows control as much as possible  All standard windows control implement IAccessible interface which all the screenreader use to read the elements of the control. So if one uses the  standard windows control their application is automatically screen reader enabled.

     2. Use system color Some of the users need to turn on high contrast color scheme on their machine in order to read the text. If you are using custom colors in your application then they would not conform to high contrast color scheme in high contrast mode. If you are using system colors then you get high contrast support for free.

    3. Understand Iaccessible Interface It is useful to have some knowledge of Iaccessible interface. In cases where it is absolutely necessary to use custom control you may need to implement Iaccessible interface to make your application screen reader enable. For more information on Iaccessible interface see http://msdn.microsoft.com/library/default.asp?url=/library/en-us/msaa/msaaccrf_5q05.asp

    4. prefer dynamic annotation over implementing Iaccessible interface Dynamic annotation could be used to change/set some of the property of the controls. It is much simpler than implementing entire iaccessible interface to your control. for more information on dynamic annotation follow the link http://msdn.microsoft.com/library/default.asp?url=/library/en-us/msaa/msaaccrf_8x7y.asp