使用 GetGlobalResourceObject 时资源信息值为空
Resource info value is empty using GetGlobalResourceObject
我创建了一个名为 Resource.fr-FR 的 resx 文件,其中包含法国的以下条目
**
Name Value
Greeting Bonjour
**
然后我在页面加载时执行代码,文化设置为 fr-FR
lblvalue.Text = (string)GetGlobalResourceObject("Resource", "Greeting");
但它始终默认为英语(默认的 Hello 文本)。
然后我尝试了
var FrenchCulture= new System.Globalization.CultureInfo("fr-FR");
System.Globalization.CultureInfo.DefaultThreadCurrentCulture = FrenchCulture;
System.Globalization.CultureInfo.DefaultThreadCurrentUICulture = FrenchCulture;
lblvalue.Text = (string)GetGlobalResourceObject("Resource", "Greeting", FrenchCulture);
但是这次我得到了
No overload for method 'GetGlobalResourceObject' takes 3 arguments
我哪里错了?
您需要更改当前线程的当前文化而不是默认线程的默认文化。-
var FrenchCulture= new System.Globalization.CultureInfo("fr-FR");
Thread.CurrentThread.CurrentCulture = FrenchCulture;
Thread.CurrentThread.CurrentUICulture = FrenchCulture;
我创建了一个名为 Resource.fr-FR 的 resx 文件,其中包含法国的以下条目
**
Name Value
Greeting Bonjour
**
然后我在页面加载时执行代码,文化设置为 fr-FR
lblvalue.Text = (string)GetGlobalResourceObject("Resource", "Greeting");
但它始终默认为英语(默认的 Hello 文本)。
然后我尝试了
var FrenchCulture= new System.Globalization.CultureInfo("fr-FR");
System.Globalization.CultureInfo.DefaultThreadCurrentCulture = FrenchCulture;
System.Globalization.CultureInfo.DefaultThreadCurrentUICulture = FrenchCulture;
lblvalue.Text = (string)GetGlobalResourceObject("Resource", "Greeting", FrenchCulture);
但是这次我得到了
No overload for method 'GetGlobalResourceObject' takes 3 arguments
我哪里错了?
您需要更改当前线程的当前文化而不是默认线程的默认文化。-
var FrenchCulture= new System.Globalization.CultureInfo("fr-FR");
Thread.CurrentThread.CurrentCulture = FrenchCulture;
Thread.CurrentThread.CurrentUICulture = FrenchCulture;