title: Localization on the fly in WinRT app
body: <p>In WinRT app newer localization is applied when app is restarted (using code or by changing language from control panel). What to do if I want to change the localized strings on-the-fly, without restarting the app? </p>
  
  <p>Suppose I have combo box with different languages. If user selects any language, all the strings would be translated using resource.</p>
  
  <p>I came across this code, but it works only if I put it in <code>App</code> constructor, that's also on launch only. I can't make it a static method as it doesn't work.</p>
  
  <pre><code>var culture = new System.Globalization.CultureInfo("en-US");
  Windows.Globalization.ApplicationLanguages.PrimaryLanguageOverride = culture.Name;
  System.Globalization.CultureInfo.DefaultThreadCurrentCulture = culture;
  System.Globalization.CultureInfo.DefaultThreadCurrentUICulture = culture;
  </code></pre>
  
  <hr>
  
  <p>I want something like below given image. Image is from <a href="http://www.codeproject.com/Articles/23694/Changing-Your-Application-User-Interface-Culture-O" rel="nofollow noreferrer">CodeProject article.</a></p>
  
  <p><img src="https://i.stack.imgur.com/SBV1q.gif" alt="enter image description here"></p>