Global Applications

If you plan to distribute your applications worldwide, you may need to prepare different versions of the user interface for different regions. At a minimum, this would involve translating text into the appropriate language. It may also involve other UI changes. You might need to adapt certain visuals to local cultural conventions. Or you might find that the original layout doesn't quite work after translation, because the words are of different lengths. (Although WPF's layout system makes it easy to build flexible layouts that can help to avoid that last problem.)

An extreme solution would be to build different versions of your software for different markets. However, a more common approach is to build a single version that can adapt to different locales, usually by selecting suitable resource files at runtime. The ResourceManager infrastructure that WPF uses makes this fairly straightforward.

Tip

Microsoft draws a distinction between localization and globalization. Localization is the process of enabling an application to be used in a particular locale, by creating culture-specific resources such as translated text. Globalization is the process of ensuring that an application can be localized without needing to be recompiled. Using ResourceManager helps to globalize your application, because its runtime resource selection enables a single build of the application to be localized by supplying suitable resources. For more information on recommended globalization ...

Get Programming WPF, 2nd Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.