【问题标题】:Change localization at execution WPF在执行 WPF 时更改本地化
【发布时间】:2013-02-07 10:31:18
【问题描述】:

我有一个 WPF 应用程序,我希望它是两种语言。我复制了我的Resources.resx 并像这样构建了我的两种语言:

所以当我第一次加载我的MainApplication 时,我会这样做:

Properties.Resources.Culture = new CultureInfo("es-ES");

之前

InitializeComponent();

所以一切都以所需的语言加载。现在我想更进一步,我在我的应用程序上设计了一个Select language

知道如何在执行时重新加载不同语言的界面吗?

编辑:

我找到了this 链接,并且似乎可以正常工作。但我有一个问题。当我尝试查找Resources x:key 时,它会启动一个错误...它显示ResourceReferenceKeyNotFoundException。去here检查我的错误。

【问题讨论】:

标签: c# .net wpf visual-studio-2010 localization


【解决方案1】:

您想更改 UI 线程的文化,这应该可行:

var culture = new CultureInfo("en-US");
Thread.CurrentThread.CurrentCulture = culture;
Thread.CurrentThread.CurrentUICulture = culture;
FrameworkElement.LanguageProperty.OverrideMetadata(typeof(FrameworkElement), new FrameworkPropertyMetadata(XmlLanguage.GetLanguage(CultureInfo.CurrentCulture.IetfLanguageTag)));

【讨论】:

    【解决方案2】:

    我关注了this 有趣的链接。

    【讨论】:

      猜你喜欢
      • 2012-03-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-10-14
      相关资源
      最近更新 更多