成人午夜激情影院,小视频免费在线观看,国产精品夜夜嗨,欧美日韩精品一区二区在线播放

當前位置:首頁>>開發編程>>VS.NET>>新聞內容
.NET Framework 中多語言支持的實現
作者:dREAMtHEATER 發布時間:2004-8-5 8:48:09 文章來源:dREAMtHEATER博客
前言
  
曾經記得在 win32 的原生代碼編程時代,為實現一個多語言界面而絞盡腦汁,因此出現了大量的教程都是教你如何讓程序實現多語言支持,這些實現方法的技術水平參差不齊,很難找到好的框架實現在商業程序中。.NET 時代的到來,我們突然發現這一切變得那么簡單,你只需輕松點擊鼠標就可以讓你的程序完美實現多語言支持。
    我不想在這里過多的解釋文中出現的概念,因為 MSDN 已經為我們提供了完全本地化的技術文檔。

正文
    我用的是 Visual Studio 2003 中的 Visual C#.NET 來實現的,
我設計的這個 Demo 不僅可以自動根據當前區域設置進行本地化的實現,還可以手動更改界面語言,并且實現自定義資源的本地化。 Demo 源碼這里下載。
    請跟隨我的步驟來完成:
  1. 創建名為“MultiLanguage”的新 Windows 應用程序。
  2. 在“屬性”窗口中,將窗體的 Localizable 屬性設置為 true。
    Language 屬性已經設置為 (Default)。
  3. 將 MainMenu、PictureBox、Button 控件從“工具箱”的“Windows 窗體”選項卡拖到窗體上,然后按照我在 Demo 窗體中對這些控件的布局、設計進行設置。
  4. 將該窗體的 Language 屬性設置為“中文(中華人民共和國)”。
  5. 重新按照我在 Demo 窗體中對這些控件的中文界面的布局、設計進行設置。
  6. 單擊解決方案資源管理器中的“顯示所有文件”按鈕。
    資源文件出現在 Form1.cs 的下面。Form1.resx 是后備區域性的資源文件,它將生成到主程序集中。Form1.zh-CN.resx 是在中國講的簡體中文的資源文件。
  7. 分別生成菜單項的 Click 事件,按照我在 Demo 中的實現代碼添加到事件處理部分。
    大家主要學習我是如何動態修改界面上所有跟語言相關的元素,包括字符串、對象(例如PictureBox.Image)。
  8. 在“項目”菜單上單擊“添加新項”。
  9. 在“模板”框中選擇“程序集資源文件”模板。在“名稱”框中鍵入文件名“WinFormStrings.resx”。WinFormStrings.resx 文件將包含英語的后備資源。每當應用程序找不到更適合于 UI 區域性的資源時,就將訪問這些資源。
    該文件被添加到解決方案資源管理器中的項目中,并自動在 XML 設計器中以“數據”視圖形式打開。
  10. 在“數據表”窗格中選擇“data”。
  11. 在“數據”窗格中,單擊空行,并在“name”列中輸入“strMessage”,在“value”列中輸入“Hello World”。
  12. 在“文件”菜單上,單擊“保存 WinFormStrings.resx”。
  13. 再執行兩次步驟 8-12 以創建一個名為“WinFormStrings.zh-CN.resx”的資源文件,并且這個文件具有在下表中指定的字符串資源。WinFormStrings.zh-CN.resx 文件將包含特定于在中國講的簡體中文的資源。
    資源文件名 name value
    WinFormStrings.zh-CN.resx strMessage 你好!世界
  14. 生成 Button1 的 Click 事件,按照我在 Demo 中的實現代碼添加到事件處理部分。
    這部分大家主要學習如何訪問手動添加的資源,其目的是為了在你以后編程時生成在對話框和錯誤信息中出現的可本地化字符串。
  15. 添加構造函數 Form1() 的代碼,按照我在 Demo 中的代碼進行添加。
  16. 保存和生成解決方案。
  17. 編譯并試著運行。
    我是用 Release 模式進行編譯的,在項目目錄的 MultiLanguage\bin\Release 下會生成兩個子目錄“zh-CHS”、“zh-CN”,里面都有一個叫“MultiLanguage.resources.dll”的文件,分別對應你在窗體中設計的后備區域性的資源文件。發布時請隨最后的編譯程序一起發布,不要改變 Bin 目錄下的任何目錄設置,.NET Framework 會根據一定規律進行本地化實現,原理請參考 MSDN 相應章節。
參考
  1. MSDN Feb 2003 簡體中文版。具體參見
    ms-help://MS.MSDNQTR.2003FEB.2052/vbcon/html/vbwlkWalkthroughLocalizingWindowsForms.htm

 


最新更新
·C#中使用Split分隔字符串的技
·VS2008開發中Windows Mobile
·PC機和移動設備上絕對路徑的
·C#程序加殼的方法(使用Sixx
·當前上下文中不存在名稱Conf
·請插入磁盤:Visual Studio 2
·用VS.NET讀取Flash格式文件信
·在ASP.NET中使用AJAX的簡單方
·VS.NET 2005中常用的一些代碼
·安裝VS.NET 2005 SP1補丁全攻
相關信息
·VS2008開發中Windows Mobile 5.0 emulator連網的配置
·C#程序加殼的方法(使用Sixxpack)
·當前上下文中不存在名稱ConfigurationManager的解決方法
·請插入磁盤:Visual Studio 2005 DVD
·用VS.NET讀取Flash格式文件信息
·在ASP.NET中使用AJAX的簡單方法
·VS.NET 2005中常用的一些代碼
·安裝VS.NET 2005 SP1補丁全攻略
·ASP.NET后臺代碼實現XmlHttp跨域訪問
·ASP.NET取得當前頁面的完整URL
畫心
愚愛
偏愛
火苗
白狐
畫沙
犯錯
歌曲
傳奇
稻香
小酒窩
獅子座
小情歌
全是愛
棉花糖
海豚音
我相信
甩蔥歌
這叫愛
shero
走天涯
琉璃月
Nobody
我愛他
套馬桿
愛是你我
最后一次
少女時代
灰色頭像
斷橋殘雪
美了美了
狼的誘惑
我很快樂
星月神話
心痛2009
愛丫愛丫
半城煙沙
旗開得勝
郎的誘惑
愛情買賣
2010等你來
我叫小沈陽
i miss you
姑娘我愛你
我們都一樣
其實很寂寞
我愛雨夜花
變心的玫瑰
犀利哥之歌
你是我的眼
你是我的OK繃
貝多芬的悲傷
哥只是個傳說
丟了幸福的豬
找個人來愛我
要嫁就嫁灰太狼
如果這就是愛情
我們沒有在一起
寂寞在唱什么歌
斯琴高麗的傷心
別在我離開之前離開
不是因為寂寞才想你
愛上你等于愛上了錯
在心里從此永遠有個你
一個人的寂寞兩個人的錯
主站蜘蛛池模板: 雅江县| 霸州市| 桂林市| 峡江县| 绥化市| 盈江县| 白水县| 呈贡县| 阿勒泰市| 平潭县| 寿阳县| 洛扎县| 曲靖市| 宽甸| 蕉岭县| 房产| 日照市| 萨嘎县| 云霄县| 隆回县| 达拉特旗| 邵东县| 孝昌县| 邵东县| 金寨县| 公安县| 临江市| 辽源市| 澄城县| 神农架林区| 商洛市| 安阳市| 综艺| 奉贤区| 康马县| 乌兰察布市| 泌阳县| 基隆市| 温泉县| 汉沽区| 富平县|