首页 电脑学院 黑客教程 网站技术 网页特效 免费论文 公文写作 演讲发言 实用文档 职场指南 时尚生活 情感男女 其他资讯

您的位置:首页-> 网站技术-> .NET技术-> .NET Framework 中多语言支持的实现
.NET Framework 中多语言支持的实现
前言
曾经记得在 win32 的原生代码编程时代,为实现一个多语言界面而绞尽脑汁,因此出现了大量的教程都是教你如何让程序实现多语言支持,这些实现方法的技术水平参差不齐,很难找到好的框架实现在商业程序中。.NET 时代的到来,我们突然发现这一切变得那么简单,你只需轻松点击鼠标就可以让你的程序完美实现多语言支持。
我不想在这里过多的解释文中出现的概念,因为 MSDN 已经为我们提供了完全本地化的技术文档。

正文
我用的是 Visual Studio 2003 中的 Visual C#.NET 来实现的,我设计的这个 Demo 不仅可以自动根据当前区域设置进行本地化的实现,还可以手动更改界面语言,并且实现自定义资源的本地化。 Demo 源码这里下载。
请跟随我的步骤来完成:
创建名为“MultiLanguage”的新 Windows 应用程序。
在“属性”窗口中,将窗体的 Localizable 属性设置为 true。
Language 属性已经设置为 (Default)。
将 MainMenu、PictureBox、Button 控件从“工具箱”的“Windows 窗体”选项卡拖到窗体上,然后按照我在 Demo 窗体中对这些控件的布局、设计进行设置。
将该窗体的 Language 属性设置为“中文(中华人民共和国)”。
重新按照我在 Demo 窗体中对这些控件的中文界面的布局、设计进行设置。
单击解决方案资源管理器中的“显示所有文件”按钮。
资源文件出现在 Form1.cs 的下面。Form1.resx 是后备区域性的资源文件,它将生成到主程序集中。Form1.zh-CN.resx 是在中国讲的简体中文的资源文件。
分别生成菜单项的 Click 事件,按照我在 Demo 中的实现代码添加到事件处理部分。
大家主要学习我是如何动态修改界面上所有跟语言相关的元素,包括字符串、对象(例如PictureBox.Image)。
在“项目”菜单上单击“添加新项”。
在“模板”框中选择“程序集资源文件”模板。在“名称”框中键入文件名“WinFormStrings.resx”。WinFormStrings.resx 文件将包含英语的后备资源。每当应用程序找不到更适合于 UI 区域性的资源时,就将访问这些资源。
该文件被添加到解决方案资源管理器中的项目中,并自动在 XML 设计器中以“数据”视图形式打开。
在“数据表”窗格中选择“data”。
在“数据”窗格中,单击空行,并在“name”列中输入“strMessage”,在“value”列中输入“Hello World”。
在“文件”菜单上,单击“保存 WinFormStrings.resx”。
再执行两次步骤 8-12 以创建一个名为“WinFormStrings.zh-CN.resx”的资源文件,并且这个文件具有在下表中指定的字符串资源。WinFormStrings.zh-CN.resx 文件将包含特定于在中国讲的简体中文的资源。
资源文件名 name value
WinFormStrings.zh-CN.resx strMessage 你好!世界

生成 Button1 的 Click 事件,按照我在 Demo 中的实现代码添加到事件处理部分。
这部分大家主要学习如何访问手动添加的资源,其目的是为了在你以后编程时生成在对话框和错误信息中出现的可本地化字符串。
添加构造函数 Form1() 的代码,按照我在 Demo 中的代码进行添加。
保存和生成解决方案。
编译并试着运行。
我是用 Release 模式进行编译的,在项目目录的 MultiLanguage\bin\Release 下会生成两个子目录“zh-CHS”、“zh-CN”,里面都有一个叫“MultiLanguage.resources.dll”的文件,分别对应你在窗体中设计的后备区域性的资源文件。发布时请随最后的编译程序一起发布,不要改变 Bin 目录下的任何目录设置,.NET Framework 会根据一定规律进行本地化实现,原理请参考 MSDN 相应章节。

参考
MSDN Feb 2003 简体中文版。具体参见
ms-help://MS.MSDNQTR.2003FEB.2052/vbcon/html/vbwlkWalkthroughLocalizingWindowsForms.htm

在百度中查找更多.NET Framework 中多语言支持的实现的内容
职场宝典   职场故事   职场跳槽   职场文化   职场理财   职场充电   情感天地   职场女性   职场礼仪   职场新人
报告总结   述职报告 工作总结 调查报告 工作汇报 计划方案 个人总结 社会实践 规章制度 调研报告 
  实习报告 考察报告 辞职报告 
演讲发言   竞职演说   就职演说   精彩演说   爱国演讲   英语演讲   十七大演讲   安全生产演讲稿   
节日祝福   重阳节 国庆节 教师节 中秋节 情人节 七夕节 劳动节 妇女节 清明节 愚人节 春节 元旦 圣诞节  儿童节  端午节 母亲节 新婚祝福 生日祝福 
讲话致辞   开业开幕   会议主持   庆典致辞   会议发言   党风廉政   党政报告   贺电慰问   婚丧嫁娶   思想宣传
法律常识   基本常识   法律文书   权益常识   劳动保障   婚姻继承   民事诉讼   刑事诉讼   
党建材料   入党申请   思想学习   党性分析   思想汇报   转正申请   民主生活   党委党建   入团申请   申报材料
求职简历   个人简历   求职自荐   求职谋略   面试技巧   求职英语   自我鉴定   英文简历   简历封面
心得体会   心得体会   经验交流   读后感   
时政热点   和谐社会   先进性教育   新农村建设   十七大   八荣八耻   科学发展观   劳动合同法   
人际沟通   社交技巧   社交礼仪   口才技巧   谈话技巧   演讲技巧   
营销技巧   电话销售   网络销售   推销技巧   促销技巧   销售口才   营销手段   销售技巧   谈判技巧   

“ .NET Framework 中多语言支持的实现”来源于网络,版权归作者所有!勿用于商业用途。

.NET技术

ASP技术
PHP技术
JSP技术
.NET技术
服务器技术
数据库开发
其它类

本类阅读TOP10

·数据库的连接串(中文)
·DES(Data Encryption Standard)加密解密整理
·利用Jmail发送和接收邮件(C#)
·.NET Framework 中多语言支持的实现
·动态菜单
·.NET 框架类库(上)
·C#中的事件
·微软.NET战略和ASP.NET简介(1)
·加密与解密
·ASP.NET中的代码分离

广告


关于本站|服务条款|广告服务|客服中心|发布文章|网站留言