我有一个C#应用程序,我试图通过使用资源管理器引用不同的resx文件来支持多种语言。
我在Designer.cs中有这段代码:
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
public static global::System.Resources.ResourceManager ResourceManager {
get {
if (object.ReferenceEquals(resourceMan, null)) {
global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("project.resources.en-US", typeof(resources.en-US).Assembly);
resourceMan = temp;
}
return resourceMan;
}
}
如何在不修改Designer.cs代码的情况下在运行时将System.Resources.ResourceManager("project.resources.en-US", typeof(resources.en-US).Assembly)
切换到System.Resources.ResourceManager("project.resources.it-IT", typeof(resources.it-IT).Assembly)
?有可能吗?
编辑:为了澄清,我意识到我不应该更改我的设计器代码,但我正在努力使其能够访问不同的resx文件。如果我的问题措辞不好,我很抱歉,但我想我并不完全明白我在说什么。我目前正在研究卫星装配。
答案 0 :(得分:3)
只需更改当前的文化信息即可完成工作。 System.Threading.Thread.CurrentThread.CurrentUICulture = new CultureInfo("en-US");