3 回答
TA贡献1851条经验 获得超5个赞
在某些情况下,使用资源文件可能会更容易。
将新的资源文件添加到Visual Studio中的项目。例如。
en.resx
对于英语,fr.resx
对于法语。打开资源文件,在字符串中,命名您的字符串,然后在值单元格中放置其他翻译。例如:
next station
的在值en.resx
就是next station
但fr.resx
可以Prochaine station
。在代码中,用于
public static ResourceManager rm = new ResourceManager("WindowsFormsApp1.en_local", Assembly.GetExecutingAssembly());
选择语言资源。当您需要向应用程序输出任何字符串时,请使用function
GetString()
,例如label1.Text = rm.GetString("welcome");
TA贡献1836条经验 获得超13个赞
wwjih123的答案中缺少一些内容。
在VS2017中
首先,首先在项目根文件夹(不在Resources文件夹中)中创建资源。命名为lang_en,lang_tr,lang_fr等...
2-然后对象属性窗口将“生成”操作保留为“嵌入式资源”
在lang_tr.resx文件的3边添加土耳其语的新字符串lbl_error和值“ Hata”(无论您喜欢什么)
4-在类内部定义变量为:
ResourceManager res_man; // declare Resource manager to access to specific cultureinfo
在InitializeComponent()之后进行5 in类初始化;
Console.WriteLine("You are speaking {0}",
System.Globalization.CultureInfo.CurrentUICulture.TwoLetterISOLanguageName);
res_man = new ResourceManager("MyApp.lang_"+ System.Globalization.CultureInfo.CurrentUICulture.TwoLetterISOLanguageName, Assembly.GetExecutingAssembly());
lblError.Text = res_man.GetString("lbl_error");
如果您的ui语言是土耳其语,它将自动加载lang_tr.resx,如果是英语,则将加载lang_en.resx文件,依此类推...
祝好运
- 3 回答
- 0 关注
- 548 浏览
添加回答
举报