备忘录:DevExpress控件汉化的两种方式
shanzm-2021年6月19日 13:19:26
1. 对单个项目的汉化
-
对单个项目汉化,指的是编译后的程序中使用的控件中的英文汉化
-
官网下载对应版本的汉化包
- https://localization.devexpress.com/
- 免费,但是需要注册
-
将汉化包 zh-CN文件夹 复制到程序的项目的Debug文件夹中,
在Program.cs中添加以下代码:
System.Threading.Thread.CurrentThread.CurrentUICulture = new System.Globalization.CultureInfo("zh-CN");
- 据说Dev版本高于15.1,不需要添加上述代码程序会默认识别到汉化包。我测试没有成功,未深入了解!
2. 设计时汉化
-
设计时汉化,指的是开发中使用DevExpress控件设计界面的汉化,但是只能汉化一部分。
开发界面汉化无关紧要,只是使用下述的汉化方式,可以使程序编译后,只包含程序需要的汉化文件。 -
下载对应版本的汉化包,放在Dev的安装路径下,比如:
D:\DevExpress19.1\Bin\Framework\zh-CN
-
管理员运行:Developer Command Prompt for VS2019
-
将命令行工具跳转到汉化包路径
- 跳转到汉化包路径
C:\Windows\System32>D: D:\>cd D:\DevExpress19.1\Bin\Framework\zh-CN
- 汉化包路径下运行一下命令,创建了temp.bat文件
D:\DevExpress19.1\Bin\Framework\zh-CN> dir /B *.dll>temp.bat
-
打开temp.bat文件,该文件中每一行都是一个dll文件名
在每一行前添加如下字符:gacutil -i
,并保存文件添加格式如下:
gacutil -i DevExpress.Charts.Designer.v19.1.resources.dll ……
- 在汉化包路径下运行 temp.bat
D:\DevExpress19.1\Bin\Framework\zh-CN>temp.bat
- 最终控制台中显示,结果举例如下,则意味汉化完成
D:\DevExpress19.1\Bin\Framework\zh-CN>gacutil -i DevExpress.Charts.Designer.v19.1.resources.dll Microsoft (R) .NET Global Assembly Cache Utility. Version 4.0.30319.0 版权所有(C) Microsoft Corporation。保留所有权利。 程序集已成功添加到缓存中 ……
-
说明
- 我本机安装有Dev18.1,汉化后,开发界面实现了部分汉化
- 安装的Dev19.1,汉化后,开发界面无法实现汉化,可能是我汉化包的问题。好像汉化包都不是很完善。