在国际化环境下,越来越多的程序需要做多语言版本,以适应各种业务需求的变化。在Winform应用程序中实现多语言也有常规的处理方式处理,不过需要针对每个语言版本,重新修改Winform界面的显示,对一些常规的辅助类,也需要引入一个统一的资源管理类来处理多语言的问题,相对比较繁琐。本篇随笔针对多语言的需求,希望尽量避免繁琐的操作,既能符合本地语种开发人员的开发习惯,又能快速实现Winform程序的多语言场景处理。
1、多语言开发的困惑和思路
在常规的多语言版本程序中,开发总是伴随着很多不愉快的事情,大概列举一些仅供参考:
1)对窗体的多语言处理时,维护多个语言版本的界面非常繁琐;
2)多语言处理的时候,以资源参照的时候,默认键值为一些英文字符串或者单词,不太符合如中文语境的开发,调整代码则需要很多工作量;
3)对于已开发好的程序,全面引入多语言的处理代码,需要大量修改;
4)对于大量中文的多语言处理,工作量望而却步;
5)对于常规Resx文件的处理觉得繁琐
6)缺乏一个统一处理多语言需求的方案
在多语言的处理上,我一直希望找出一种高效的处理方式,由于我的Winform开发框架中很多模块是现成的,希望能够使用继承处理的方式,实现最简化的处理;
同时大量中文的英文(针对英文版本)翻译也是一个头痛的事情,突然想到百度的翻译API接口可以利用,那么我们可以利用翻译接口实现开始的翻译,然后对资源进行一定的调整则可以提高效率和准确率。










