DevExpress官方汉化文件对界面进行汉化的过程
2016-05-27 23:43
316 查看
使用DevExpress官方汉化文件对界面进行汉化的过程
在较早期的Dev开发中,基本上都是在使用一个DLL包的汉化文件,如基于13.1的汉化包文件Dxper.LocalizationCHS.Win.v13.1.5.dll,这个汉化包也比较方便,大多数时候复制一个文件就搞定了。不过这样的汉化包一般同步更新比较慢,最近使用了DevExpress当前较新版本14.*后,希望集成使用官方的汉化文件,本文介绍在使用官方汉化文件的一些历程和心得,希望对后来者有帮助。我们知道,如果使用有其他方处理汉化包文件(类似汉化包Dxper.LocalizationCHS.Win.v13.1.5.dll),这样的方式就是复制文件比较方便,如果使用官方汉化包,复制的文件比较多,比较零散。但是使用官方汉化包也有好处,就调用的时候,一句话就可以把界面线程的语言进行切换了,而且打包的时候,也不会有太多的不同。
1、如何在程序中使用官方汉化文件
Dev的官方汉化文件,是一系列的独立资源类,它对应着不同的界面汉化内容,如下界面截图所示。一般情况下,我们根据需要复制一部分即可。
![](http://images.cnitblog.com/blog/8867/201501/040927137316762.png)
准备好上面的文件后,我们在程序代码里面,需要增加一句话,指定去对应目录获取汉化资源文件即可。
![](http://images.cnitblog.com/blog/8867/201501/040929532315301.png)
这样如果我们是直接复制文件去机器上运行,记得把zh-CN目录下的资源文件一并复制过去,运行起来就可以看到Dev控件的中文化菜单或者提示了。
2、如何在安装包里面使用汉化文件
对于这么多汉化文件,看起来虽然比较多,但是,打包的时候,你最终也只是把这些零散的内容整合到安装包里面了,所以没有太多的不一样的地方。一般情况下,我们在安装包里面,集成汉化文件的时候,就在文件视图里面,把对应的zh-CN目录整个拖动到VS的安装包设计器里面,就可以了,这样所有相关的文件都会加入进来,也是非常方便的。
![](http://images.cnitblog.com/blog/8867/201501/040934533098391.png)
做好这一步,其他的内容,就是按照常规的方式进行添加或者处理就可以了,对于安装包,有时候通过刷新引用关系,并检查某些文件是否遗漏即可。
以上是基于VS2010的安装包处理,对于VS2012、VS2013以上,他们的做法上有所不同,不过总体的步骤是一致的。
3、DevExpress14的版本使用总结
对于引入Dev14.*的版本,由于它们增加了对PDF的改善支持,因此我们可以直接在附件里面预览PDF文档而没有出现格式出错的情况了(13.*处理PDF的格式会有问题),另外还增强了XtraSpreadSheet的功能,因此也可以使用这个模块来处理Excel的相关内容了,Word照常可以使用RichEdit控件进行预览和处理,不过格式显示依旧有一些失真,有些地方字体显示还是不太好。不过基于PDF、RichEdit和SpreadSheet的功能,可以使用它们进行很好的应用了。如我在我的《Winform开发框架》、《混合式开发框架里面》使用的通用附件管理模块,就是基于这些特点,实现图片、Excel文档、Word文档和PDF等文档的在线预览和管理操作,界面截图如下所示。
![](http://images.cnitblog.com/blog/8867/201412/221010576406232.png)
由于引进了一些新的对象,如Range等,这些如果你在Aspose.Cell里面已经使用它来处理报表方面的时候,那么就需要特别声明了,因为它会和DevExpress里面的SpreadSheet里面的对象类产生冲突,一般情况下处理下就可以了。
![](http://images.cnitblog.com/blog/8867/201501/040949332789123.png)
除了这些,基本上没有其他的冲突问题,DevExpress版本的更新,依旧保持比较的向后兼容的情况。
相关文章推荐
- java 强引用,软引用,弱引用,虚引用
- iOS对象序列化和反序列化
- xml schema约束入门(1)
- Android 通过注册广播,实时监听网络连接与断开状态的变化
- 公众号微信支付开发
- 有钱没钱
- hdu-2680-Choose the best route
- C++ 马克思手稿问题(暴力循环)
- NoHttp,volley,okhttp介绍
- string 类(刚做的一道题目,用到了string的排序)
- bzoj2839 集合计数
- 1012. 数字分类 (20)
- Java Stream初探(二)
- 对数组a中n个整数反序存放,可用指针实现。
- Levmar 配置
- Levmar 配置
- Lambda for Android
- 使用jsonp跨域调用百度js实现搜索框智能提示,并实现鼠标和键盘对弹出框里候选词的操作【附源码和在线测试地址】
- 一位存储研发者的图书清单(刘爱贵)
- DHCP静态地址分配和ARP绑定的理解