网站链接: 环球农商网
当前位置: 首页 > 资讯动态  > 平台资讯

.NET Framework 中多语言支持的实现

2019/3/5 11:48:38 人评论

使用的是 Visual Studio 2003 中的 Visual C#.NET 来实现的,设计的这个 Demo 不仅可以自动根据当前区域设置进行本地化的实现,还可以手动更改界面语言,并且实现自定义资源的本地化。具体设置步骤: 1.创建名为“MultiLanguage”的新 Windows 应用程序…

使用的是 Visual Studio 2003 中的 Visual C#.NET 来实现的,设计的这个 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.“数据”视图形式打开。
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 相应章节。
 

相关资讯

  • document.cookie:客户端操作cookie

    我们已经知道,在 document 对象中有一个 cookie 属性。但是 Cookie 又是什么?“某些 Web 站点在您的硬盘上用很小的文本文件存储了一些信息,这些文件就称为 Cookie。”—— MSIE 帮助。一般来说,Cookies 是 CGI 或类似,比 HTML …

    2019/4/12 8:18:11
  • 用ASP实现分级权限控制

    本文实现的是一个帐务管理系统中分级权限的控制,程序使用ASP和JavaScript编写,在装有IIS4.0的win NT服务器上运行,速度快,易维护。  权限级别划分如下:  ①、院长和财务科长:不能输入,可以无限制查询、统计;  ②、副院长:不能输入,可以查询、统计其分管部…

    2019/4/12 8:18:11
  • ASP实现Rewrite模拟生成静态页效

    以前刚刚懂404.asp的时候,曾经幻想把所有程序代码写到404.asp中,实现一个模拟生成静态网页的站,如果程序小还可以,用404.asp实现Rewrite还是一个不错的选择,如果程序代码多达100000行,恐怕就要开始爬了  直到看到asp的Server.Transfer,用404模拟生成静态页的站的念…

    2019/4/12 8:18:11
  • ASP随机涵数生成100条8位字母和数字混合密码

    <%for i = 1 to 100%><%Randomizepass=""Do While Len(pass)<8 随机密码位数num1=CStr(Chr((57-48)*rnd+48)) 0~9num2=CStr(Chr((122-97)*rnd+97)) a~zpass=pass&num1&num2loop原创:www.devdao.com%><%=pass%><br><%next…

    2019/4/12 8:18:11

共有条评论 网友评论

验证码: 看不清楚?