【原创】:WinForm使用XML动态加载多语言
2011-08-16 14:55
435 查看
View Code
///<summary> /// 加载语言文件 ///</summary> privatevoid LoadLanguage() { LanguageSeting langset =new LanguageSeting(); string strLanguage = ConfigurationManager.AppSettings["Language"]; if (!strLanguage.Equals("Chinese")) { langset.GetFrmLanguage(this.Name); string temp =""; //加载菜单 foreach (ToolStripMenuItem ctl inthis.menuStrip1.Items) { temp = langset.GetFrmCtlLanguage(this.Name, ctl.Name); if (temp.Length >0) ctl.Text = temp; for (int i =0; i < ctl.DropDownItems.Count; i++) { if (ctl.GetType() ==typeof(ToolStripMenuItem)) { temp = langset.GetFrmCtlLanguage(this.Name, ctl.DropDownItems[i].Name); if (temp.Length >0) ctl.DropDownItems[i].Text = temp; } } } foreach (ToolStripItem ctl inthis.toolStrip1.Items) { temp = langset.GetFrmCtlLanguage(this.Name, ctl.Name); if (temp.Length >0&& ctl.GetType()==typeof(ToolStripButton)) ctl.Text = temp; } } }
每个窗体加载的时候
调用
LoadLanuageSettings(this);方法即可
效率还行,40多个控件的页面加载文字并显示的速度在12毫秒左右,可以忽略不计.
如果需要动态切换,再次调用即可.
作为一个初学者,可能代码中还有不恰当的地方,还请各位多多指出.
运行效果图:
该方法优点:
1.语言文件配置文件可以完全自动生成,只要稍加修改即可.
2.可以动态加载语言配置文件.
3.配置文件修改方便.
相关文章推荐
- WinForm使用XML动态加载多语言
- android: 静态XML和动态加载XML混合使用,以及重写Layout控件
- android 开发零起步学习笔记(十五):android: 静态XML和动态加载XML混合使用,以及重写Layout控件
- android: 静态XML和动态加载XML混合使用,以及重写Layout控件
- 【Android开发学习44】android: 静态XML和动态加载XML混合使用,以及重写Layout控件
- c# 语言 winform 项目中 control.parent 的使用 (原创)
- WinForm 从XML中动态加载菜单的示例
- WinForm 从XML中动态加载菜单的示例
- android: 静态XML和动态加载XML混合使用,以及重写Layout控件
- 【android动态布局】之【ListView动态加载数据模板(使用xml布局)】
- Unity3D游戏开发之使用AssetBundle和Xml实现场景的动态加载
- android: 静态XML和动态加载XML混合使用,以及重写Layout控件
- ListView动态加载数据模板(使用xml布局)
- android: 静态XML和动态加载XML混合使用,以及重写Layout控件
- WinForm 从XML中动态加载菜单的示例
- android 动态加载 语言xml 实现国际化
- android: 静态XML和动态加载XML混合使用,以及重写Layout控件
- 【android动态布局】之【ListView动态加载数据模板(使用xml布局)】
- android 动态加载 语言xml 实现国际化
- 转:android: 静态XML和动态加载XML混合使用,以及重写Layout控件