Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    text
    copied!<p>I am using the <a href="http://www.codeplex.com/WPFLocalizeExtension" rel="noreferrer">WPF Localization Extension</a>. It is a really easy way to localize any type of <code>DependencyProperty</code> on <code>DependencyObject</code>s.</p> <ul> <li>is in a real stable state </li> <li>supports binding-like writing style like <code>Text = {LocText ResAssembly:ResFile:ResKey}</code> </li> <li>works with the .resx-fallback mechanism (e.g. en-us -> en -> independent culture) </li> <li>supports culture forcing (e.g. "this has to be English all the time") </li> <li>works with normal dependency properties </li> <li>works with control templates </li> <li>can be used in XAML (really :P) without any additional namespaces</li> <li>can be used in code behind to bind localized values to dynamic generated controls </li> <li>implements <code>INotifyPropertyChanged</code> for advanced use</li> <li>supports string formatting e.g. <code>"this is the '{0}' value"</code></li> <li>supports prefix and suffix values (currently with <code>LocText</code> extension) </li> <li>is in use in productive systems (like my public relation product) </li> <li>switching of the language to runtime affects <strong>NO</strong> timeslice </li> <li>can be used with any resource file (<code>.resx</code>) across all assemblies (also the dynamic loaded one at runtime) </li> <li>doesn't need any initializing process (like "call xyz to register a special localize dictionary") </li> <li>is available at design-time (MS Expression Blend, MS Visual Studio 2008 (Normal and SP1) </li> <li>change of the chosen language is possible at design-time </li> <li>can localize any type of data type, as long as a converter (<code>TypeConverter</code>) for it exists (extends <code>LocalizeExtension</code>) </li> <li>has built in support for <code>Text</code>, upper <code>Text</code>, lower <code>Text</code>, <code>Image</code>s, <code>Brush</code>es, <code>Double</code> and <code>Thickness</code></li> <li>doesn't affects any memory leaks </li> <li>leaves the <code>UID</code> property untouched </li> <li>offers a <code>SpecificCulture</code> to use as <code>IFormatProvider</code> (e.g. <code>(123.20).ToString(LocalizeDictionary.SpecificCulture) = "123.20"</code> or <code>"123,20"</code>) </li> <li>offers some functionality to check and get resource values in code behind </li> <li>doesn't alter the culture on <code>Thread.CurrentCulture</code> or <code>Thread.CurrentUICulture</code> (can be changed easily)</li> </ul>
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload