编程使用资源文件实现多语言页面(In Action)

2016-02-19 17:57 2 1 收藏

有了下面这个编程使用资源文件实现多语言页面(In Action)教程,不懂编程使用资源文件实现多语言页面(In Action)的也能装懂了,赶紧get起来装逼一下吧!

【 tulaoshi.com - Web开发 】

  需求:我们的ASP.NET站点需要提供多语言支持,考虑到我们使用的是ASP.NET2.0,我们可以利用资源文件来实现。

   

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/webkaifa/)

  NOTE:这里我们使用编程的方法实现,使用其他方法,请参见:

  http://msdn2.microsoft.com/en-us/library/c6zyy3s9.aspx

   

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/webkaifa/)

  接下来我们演示一个简单的例子

  Steps:

   

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/webkaifa/)

  Step1:在Visual Studio2005中创建一个ASP.NET站点

  Step2:在网站项目中添加App_GlobalResources

  Note:这里我们使用全局资源文件作为演示,本地资源文件操作步骤类似,关于全局资源文件与本地资源文件的异同,请参见

  http://msdn2.microsoft.com/en-us/library/ms227427.aspx

  中Choosing Between Global and Local Resource Files这一段

  Step3:在App_GlobalResources中添加项,选择Resource File模板,取名为Site.resx

  Note:这是我们的默认语言资源文件,必须要有

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/webkaifa/)

  在这个资源文件的键/值配对中写入:

  Name : btnSubmitText

  Value: Submit

   

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/webkaifa/)

  Step4:增加我们需要的各种语言的资源文件,这里我们增加两个文件

  Site.zh-CN.resx

  在这个资源文件的键/值配对中写入:

  Name : btnSubmitText

  Value: 确定

  Site.en-US.resx

  在这个资源文件的键/值配对中写入:

  Name : btnSubmitText

  Value: Submit

   

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/webkaifa/)

  Note:这里给资源文件取名的时候,需要按照如下格式:

  [Class]. [Culture Name].resx

  比如说Site.zh-CN.resx

  关于Culture Name请参见MSDN中CultureInfo类中的Remarks部分

   

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/webkaifa/)

  Step5:在我们的Default页面中添加一个Button控件,ID为btnSubmit

  Step6:在我们的Default页面中添加两个Button控件,ID为btnChinese,btnEnglish,Text为中文,English

  在btnChinese的Click事件方法中,添加代码:

  
          Thread.CurrentThread.CurrentUICulture = new CultureInfo("zh-CN");
          btnSubmit.Text = Resources.Site.btnSubmitText;

  
  在btnEnglish的Click事件方法中,添加代码:

  
          Thread.CurrentThread.CurrentUICulture = new CultureInfo("en-US");
          btnSubmit.Text = Resources.Site.btnSubmitText;

  Note:如果我们不在代码里指定当前线程的CurrentUICulture,那么程序就会根据浏览器中的设置进行判断,你可以在IE中的语言设置中进行默认设置。

   

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/webkaifa/)

  OK, 我们可以运行了。

  UAT就让大家来做吧,呵呵。不出所料,一切都如我们所预料的运行。

   

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/webkaifa/)

   

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/webkaifa/)

  By the way, 最近发的几篇文章难度都不是很高,其实重要的是告诉大家一种可以选择的方法,或是大家都不是很注意的一些知识点, 引导大家如果有需要继续去发掘,MSDN里有的内容,我就简要介绍或者直接给出链接,那样就不会显得文章庞大臃肿,让大家集中注意力在某一些点上。Enjoy it J

   

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/webkaifa/)

  PS:欢迎大家加我的MSN或者QQ讨论.NET 2.0(主要是C#2.0跟ASP.NET2.0吧)跟.NET3.0,发现我加入的几个QQ群都还挺少有人讨论这两个版本的内容的。还有一些朋友问我的很多问题,其实通过查找MSDN都可以找到答案跟示例,所以我的建议是,首先通过自己查找资料寻找解决方案。还有一些朋友直接向我要源码,或者说让我做一个MSDN示例里已经有代码的演示Project,那我的建议是,你还是自己先去尝试着做吧,我做好给你,你再看肯定没有你自己做一边效果来的好。

  http://www.cnblogs.com/wdxinren/archive/2006/09/07/497686.html

来源:https://www.tulaoshi.com/n/20160219/1616455.html

延伸阅读
标签: Web开发
1.     跟以前一样做界面,只是注意,把所有需要有多语言界面的文字都用label来做 2.     做完以后,在Solution Explorer里选中这个文件,选Tools-Generate Local Resource 3.     你会发现生成了一个目录,App_LocalResources;这个目录里多了一个resx的文件。...
标签: ASP
        可能有的web应用程序,需要多语言支持,例如,讨论组,既有中文界面,以适合国人使用的方便,又需要英文界面,以满足国际化的需要。我想,似乎没有必要为每一个语言都写一个版本,这不仅比较繁琐,而且以后程序升级就必须修改所有版本的程序。熟悉vc++程序的朋友一定知道通常windows应用程序的国际...
标签: Web开发
最近有了一点小空,又开始研究起FLASH来了。发现FLASH做应用程序的人很多,但是多语言界面做的人是很少的,就着意看了一下,发现居然很简单。翻了翻手册。捣了出来,不敢独享,还请大家多指点。 我就来确定流程吧。 1.先判断操作系统的语言版本->2.读取相关语言包 ->3.替换显示字串 一、判断系统语言 判断语言有一个内置函数 System.capab...
VB提供的方法使我们可以很容易地使用资源文件中的字符、图片等资源。我们可以用以下方法播放资源文件中的wav声音:首先,在你的资源文件的源文件(RC)文件加入下面一行: MySoundWAVEc:musicvanhalen.wav 然后将其编译为RES文件。最后使用下面的声明及代码: PrivateDeclareFunctionPlaySoundLib_"winmm.dll"Alias"PlaySoundA"(...
最近在做一个小程序,要求实现对多语言界面显示支持功能,并且,界面显示内容用户能够自己设置。 初步设计用INI文件来配置显示内容,换一种语言的配置文件,就能够更换整个系统的显示语言。考虑到系统规模很小,周期又短,不想用太复杂的方案来解决这个问题,当参考了很多网上类似的设计和代码,发现都不是很满足。 主要问题在于:绝大多...

经验教程

499

收藏

9
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部