百度搜索 "C# 国际化 动态切换"
我主要讲几种比较通用的实现方式:
使用XAML动态绑定的方法
百度搜索 "WPF实现无刷新动态切换多语言(国际化)" 这篇文章中讲的,语言使用xaml文件,不使用自带的Resources。通过DynamicResource 动态绑定。在后台代码通过修改ResourceDictionary.MergedDictionaries来动态切换语言。
2.重新加载窗体的方法
百度搜索 “C#中 动态切换当前界面的语言”这篇文章中讲的,清除页面所有控件,然后修改当前进程语言,然后调用InitializeComponent()方法重新初始化页面。不过这篇文章讲的是Winform,理论上我认为WPF也可以用,题主可以一试。
这个问题我之前也遇到过,我采用的是方法1,我一直认为C#默认的语言文件编译成单独的dll并且每种语言的dll占用一个文件夹的方式很不好,目录结构显的很乱。
我理想的方式是有一个专门的L18n或者locales文件夹放每种语言的语言包,目前大部分软件也都是这样搞。
最好是语言包是我们可以直接编辑或者解压之后可编辑的,这样修改添加语言文件就不需要重新编译软件了。
在DataGridView设置数据源绑定后,设置DataGridView的属性HeaderText就可以了。
代码参考:
dataGridView.Columns[filedName].HeaderText
=
displayLabel
别的地方找的答案,不知道问的是不是这个,呵呵,另外双手奉上阿里云服务器券:网页链接
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)