Resource.resx在wpf中动态加载

时间:2016-01-18 07:54:44

标签: c# wpf resources load resx

我正在创建一个应用程序,在开始之前,用户可以在登录之前选择语言。 我做了4个不同的文件, - Resource.resx - Resource.IT-it.resx - Resource.ES-es.resx - Resource.DE-de.resx

我想点击加载的语言文件点击。 目前在xaml调用所以文件:

xmlns:res="clr-namespace:MyClass.Properties;assembly=MyClass"
Title="{x:Static res:Resources.mynamevariable}"

如何点击舌头,你可以充值资源文件? ps。:4包含相同变量的文件,以便轻松绘制翻译。

谢谢

3 个答案:

答案 0 :(得分:1)

试试这个

MyClass.Properties.Resources.Culture = new System.Globalization.CultureInfo("it-IT");

而不是

Thread.CurrentThread.CurrentCulture = new CultureInfo("it-IT");

答案 1 :(得分:0)

您需要将CultureInfo设置为用户选择的文化。例如,要更改为意大利语,您需要使用:

Thread.CurrentThread.CurrentCulture = new CultureInfo("it-IT"); Thread.CurrentThread.CurrentUICulture = new CultureInfo("it-IT");

您的资源文件也应该命名为Resources.resx - Resources.it-IT.resx - Resources.es-ES.resx - Resources.de-DE.resx

答案 2 :(得分:0)

我已经解决了:

myclass.Properties.Resources.Culture = new System.Globalization.CultureInfo("it-IT");

在哪里-IT可以de-DE ... fr-FR..ecc