WinForm多语言
1.安装 ResXManager.VSIX.vsix,此VS扩展,用来集中管理翻译,使用说明书的位置:
https://github.com/tom-englert/ResXResourceManager/wiki/Usage
安装完成后,如下图所示:

2.在项目中

点击属性“Localization”,对于每个控件,产生resx文件(本文档中,默认是中文)。

3.VS中,点击“视图”->"其他窗口"->ResX Manager,然后“添加新语言”,添加“美国”后,相应项目翻译成英文后。

4.VS目录下面,生成…….en-US.resx资源文件。

5.代码切换语言
if (UcSwitch_LanguageChange.Checked) {
Thread.CurrentThread.CurrentUICulture = new System.Globalization.CultureInfo("en-US");
} else {
Thread.CurrentThread.CurrentUICulture = new System.Globalization.CultureInfo("zh-CHS"); }
6.然后,每个界面需要响应事件来应用语言变化(此处可以使用事件、消息等来触发)
private void ApplyResource()
{
ComponentResourceManager res = new ComponentResourceManager(typeof(DummyToolBox));
foreach (Control ctl in Controls)
{
res.ApplyResources(ctl, ctl.Name);
}
//Caption
res.ApplyResources(this, "$this");
}
浙公网安备 33010602011771号