天天看點

RDIFramework.NET V2.9版本多語言的實作

RDIFramework.NET V2.9版本多語言的實作

現在是國際化時代,軟體也不能落後。一個公司裡很可能會有老外,也可能有台灣的朋友,他們用軟體的習慣都不一樣,若同樣一個軟體同時能适應多種語言文化,那是想當的理想了,最起碼能比較完善的支援英文版本,大家用起來也會舒服一些。

RDIFramework.NET架構中的多語言包,目前是按XML檔案的方式進行組織,友善使用者自由定義語言包。XML 語言包的好處主要就是客戶修改起來容易,直接用記事本就可以修正了,沒必要又重新編譯源碼啥的,非常省事。我們架構目前主要支援中文簡體、繁體、英文三種,當然如果需要其他語言包可以自己制作。多語言實作的參考如下圖所示,這些語言包以XML檔案的格式、直接存儲了文本檔案、需要幾個國家的語言支援,隻要有配套的包就可以了。

RDIFramework.NET V2.9版本多語言的實作

  現在是國際化時代,軟體也不能落後。一個公司裡很可能會有老外,也可能有台灣的朋友,他們用軟體的習慣都不一樣,若同樣一個軟體同時能适應多種語言文化,那是想當的理想了,最起碼能比較完善的支援英文版本,大家用起來也會舒服一些。

  RDIFramework.NET架構中的多語言包,目前是按XML檔案的方式進行組織,友善使用者自由定義語言包。XML 語言包的好處主要就是客戶修改起來容易,直接用記事本就可以修正了,沒必要又重新編譯源碼啥的,非常省事。我們架構目前主要支援中文簡體、繁體、英文三種,當然如果需要其他語言包可以自己制作。多語言實作的參考如下圖所示,這些語言包以XML檔案的格式、直接存儲了文本檔案、需要幾個國家的語言支援,隻要有配套的包就可以了。

一、多語言效果展示

  

RDIFramework.NET V2.9版本多語言的實作

  語言包配置檔案如下圖所示:

  簡體中文語言包參考:

RDIFramework.NET V2.9版本多語言的實作

  繁體中文語言包參考: 

RDIFramework.NET V2.9版本多語言的實作

  英文語言包參考:

RDIFramework.NET V2.9版本多語言的實作

  以上就是語言包裡的内容參考,每個頁面上的元素的多語言定義,中間用了“_”區分了每個窗體裡的控件的名稱,全名規則為:窗體名稱_控件名稱。RDIFramework.NET架構的多語言不僅對子產品界面進行了語言,同時對日志檔案、各消息提示架構等都進行了多語言的處理,如下的日志檔案所示,發“英文”語言包登入,各日志檔案都是以英文進行記錄的。

RDIFramework.NET V2.9版本多語言的實作

  提示資訊一樣是以相應的語言包設定顯示,如下圖所示:

RDIFramework.NET V2.9版本多語言的實作

二、多語言效果切換方式

  要想展示進行多語言方案,首先我們得啟用多語言選項,然後再設定目前語言。方式有兩種,一種是通過修改Config.xml檔案來實作,如下圖所示:

RDIFramework.NET V2.9版本多語言的實作

  啟用多語言我們需要設定:MultiLanguage屬性為True,另需要設定“CurrentLanguage”架構目前語言屬性,如果沒有設定,預設為簡體中文,CurrentLanguage屬性取值為:

      zh-CN:簡體中文

  zh-TW:繁體中文

  en-US:英文

  或者通過架構主界面的“選項”窗體進行目前語言的設定,設定後重新啟動架構即可。如下圖所示:

RDIFramework.NET V2.9版本多語言的實作

三、多語言調用接口

  RDIFramework.NET架構對窗體、使用者控件等都進行了多語言的支援,如果使用者按照多語言定義的規範進行了語言的定義,則可以直接調用RDIFramework.WinForm.Utilities.dll檔案中的接口:      

  BasePageLogic.SetLanguageResource(窗體名稱),進行多語言的切換。

  如果是脫離架構的單獨頁面,則可以在加載事件中調用“RDIFramework.Utilities.dll”提供的接口:

// 多語言國際化加載
ResourceManagerWrapper.Instance.LoadResources(Path.Combine(Application.StartupPath,"Resource/Localization/"));
// 從目前指定的語言包讀取資訊
RDIFrameworkMessage.GetLanguageResource();
然後再調用下面的接口進行多語言的處理
ResourceManagerWrapper.Instance.Get("目前語言", "語言包中的Key值");
      

參考閱讀

RDIFramework.NET — 基于.NET的快速資訊化系統開發架構 — 系列目錄

RDIFramework.NET ━ .NET快速資訊化系統開發架構钜獻 V2.9 版本震撼釋出

一路走來數個年頭,感謝RDIFramework.NET架構的支援者與使用者,現在啟用了RDIFramework.NET官方網站與官方部落格,大家可以通過下面的地方通路。

RDIFramework.NET官方網站:http://www.rdiframework.net/

RDIFramework.NET官方部落格:http://blog.rdiframework.net/

      同時需要說明的,以後的所有技術文章以官方網站為準,歡迎大家收藏!

      RDIFramework.NET架構由專業團隊長期打造、一直在更新、一直在更新,請放心使用! 

歡迎關注RDIFramework.NET架構官方公衆微信(微信号:rdiframework-net),及時了解最新動态。

掃描二維碼立即關注

作者:

RDIFramework.NET

出處:http://www.cnblogs.com/huyong/

Email:[email protected]

QQ:406590790

微信:13005007127(同手機号)

架構官網:http://www.rdiframework.net/

架構官網部落格:http://blog.rdiframework.net/

架構其他部落格:http://blog.csdn.net/chinahuyong

http://www.cnblogs.com/huyong

RDIFramework.NET,基于全新.NET Framework與.NET Core的快速資訊化系統開發、整合架構,為企業快速建構垮平台、企業級的應用提供了強大支援。

關于作者:系統架構師、資訊系統項目管理師、DBA。專注于微軟平台項目架構、管理和企業解決方案,多年項目開發與管理經驗,曾多次組織并開發多個大型項目,在面向對象、面向服務以及資料庫領域有一定的造詣。現主要從事基于

RDIFramework.NET

架構的技術開發、咨詢工作,主要服務于金融、醫療衛生、鐵路、電信、物流、物聯網、制造、零售等行業。

如有問題或建議,請多多賜教!

本文版權歸作者和CNBLOGS部落格共有,歡迎轉載,但未經作者同意必須保留此段聲明,且在文章頁面明顯位置給出原文連接配接,如有問題,可以通過微信、郵箱、QQ等聯系我,非常感謝。