RDIFramework.NET V2.9版本多语言的实现

简介:

RDIFramework.NET V2.9版本多语言的实现

  现在是国际化时代,软件也不能落后。一个公司里很可能会有老外,也可能有台湾的朋友,他们用软件的习惯都不一样,若同样一个软件同时能适应多种语言文化,那是想当的理想了,最起码能比较完善的支持英文版本,大家用起来也会舒服一些。

  RDIFramework.NET框架中的多语言包,目前是按XML文件的方式进行组织,方便用户自由定义语言包。XML 语言包的好处主要就是客户修改起来容易,直接用记事本就可以修正了,没必要又重新编译源码啥的,非常省事。我们框架目前主要支持中文简体、繁体、英文三种,当然如果需要其他语言包可以自己制作。多语言实现的参考如下图所示,这些语言包以XML文件的格式、直接存储了文本文件、需要几个国家的语言支持,只要有配套的包就可以了。

一、多语言效果展示

  

  语言包配置文件如下图所示:

  简体中文语言包参考:

 

  繁体中文语言包参考: 

  英文语言包参考:

  以上就是语言包里的内容参考,每个页面上的元素的多语言定义,中间用了“_”区分了每个窗体里的控件的名称,全名规则为:窗体名称_控件名称。RDIFramework.NET框架的多语言不仅对模块界面进行了语言,同时对日志文件、各消息提示框架等都进行了多语言的处理,如下的日志文件所示,发“英文”语言包登录,各日志文件都是以英文进行记录的。

 

  提示信息一样是以相应的语言包设置显示,如下图所示:

二、多语言效果切换方式

  要想展示进行多语言方案,首先我们得启用多语言选项,然后再设置当前语言。方式有两种,一种是通过修改Config.xml文件来实现,如下图所示:

  启用多语言我们需要设置:MultiLanguage属性为True,另需要设置“CurrentLanguage”框架当前语言属性,如果没有设置,默认为简体中文,CurrentLanguage属性取值为:

      zh-CN:简体中文

  zh-TW:繁体中文

  en-US:英文

  或者通过框架主界面的“选项”窗体进行当前语言的设置,设置后重新启动框架即可。如下图所示:

三、多语言调用接口

  RDIFramework.NET框架对窗体、用户控件等都进行了多语言的支持,如果用户按照多语言定义的规范进行了语言的定义,则可以直接调用RDIFramework.WinForm.Utilities.dll文件中的接口:      

  BasePageLogic.SetLanguageResource(窗体名称),进行多语言的切换。

  如果是脱离框架的单独页面,则可以在加载事件中调用“RDIFramework.Utilities.dll”提供的接口:

1
2
3
4
5
6
// 多语言国际化加载
ResourceManagerWrapper.Instance.LoadResources(Path.Combine(Application.StartupPath, "Resource/Localization/" ));
// 从当前指定的语言包读取信息
RDIFrameworkMessage.GetLanguageResource();
//然后再调用下面的接口进行多语言的处理
ResourceManagerWrapper.Instance.Get( "当前语言" "语言包中的Key值" );

本文转自yonghu86 51CTO博客,原文链接:http://blog.51cto.com/yonghu/1659433,如需转载请自行联系原作者

相关文章
|
4月前
|
存储 文字识别 C#
一个基于百度飞桨封装的.NET版本OCR工具类库 - PaddleOCRSharp
一个基于百度飞桨封装的.NET版本OCR工具类库 - PaddleOCRSharp
|
5月前
|
数据采集 自然语言处理 搜索推荐
.Net版本二维码生成器,可生成多种格式:WIFI、网址、邮箱等。
.Net版本二维码生成器,可生成多种格式:WIFI、网址、邮箱等。
43 0
|
6月前
|
开发框架 JavaScript .NET
.NET 8 候选版本 2 (RC2) 现已可用
.NET 8 候选版本 2 (RC2) 现已可用
67 0
.NET 8 候选版本 2 (RC2) 现已可用
|
9月前
|
开发框架 JavaScript 前端开发
.NET 8新预览版本使用 Blazor 组件进行服务器端呈现
.NET 8新预览版本使用 Blazor 组件进行服务器端呈现
160 0
.NET 8新预览版本使用 Blazor 组件进行服务器端呈现
|
11月前
|
API 开发工具 C#
一个.Net版本的ChatGPT SDK
根据OpenAI的开放API,封装的.Net SDK
145 0
|
NoSQL Redis 数据安全/隐私保护
.net core工具组件系列之Redis—— 第一篇:Windows环境配置Redis(5.x以上版本)以及部署为Windows服务
Cygwin工具编译Redis Redis6.x版本是未编译版本(官方很调皮,所以没办法,咱只好帮他们编译一下了),所以咱们先下载一个Cygwin,用它来对Redis进行编译。
190 0
.net core工具组件系列之Redis—— 第一篇:Windows环境配置Redis(5.x以上版本)以及部署为Windows服务
|
监控 Windows
一个基于Quartz.Net开发的Windows版本的进程监控
一个基于.Net 4开发的进程监控系统。此项目可用于监控系统的运行情况,支持按天周月指定时间自动重启,进程添加、编辑监控等。
88 0
一个基于Quartz.Net开发的Windows版本的进程监控
|
开发框架 Prometheus 监控
《快来为你的.NET应用加个监控吧!》更新版本啦
《快来为你的.NET应用加个监控吧!》更新版本啦
227 0
《快来为你的.NET应用加个监控吧!》更新版本啦
|
传感器 编解码 算法
Google Earth Engine ——MOD17A3H.006: Terra Net Primary Production Yearly Global 500m这是该产品的NASA版本年度净初级
Google Earth Engine ——MOD17A3H.006: Terra Net Primary Production Yearly Global 500m这是该产品的NASA版本年度净初级
293 0
Google Earth Engine ——MOD17A3H.006: Terra Net Primary Production Yearly Global 500m这是该产品的NASA版本年度净初级
.NET Micro Framework V4.2 QFE2新版本简介
.NET Micro Framework V4.2 QFE2最新版改变
743 0