All articles| All Pictures| All Softwares| All Video| Go home page| Write articles| Upload pictures

Reading number is top 10 articles
C#教程:网络编程介绍
注册起动脚本,ASP.NET,AJAX的一项重要功能_.net资料_编程技术
关于ASP.NET编程里Session的用法_.net资料_编程技术
asp.net加密页面传递参数做法与示例_[Asp.Net教程]
SQL循序渐进(5)-------插入数据到表_[SQL,Server教程]
SQL注入漏洞全接触(入门篇)_[SQL,Server教程]
Visual,Studio,2008,简体中文版,测试版2,下载地址_[Asp.Net教程]
Repeater控件分页例子_[Asp.Net教程]
ajax+asp.net2.0,sql2005三级联下拉框_[Asp.Net教程]
Apache伪静态html(URL Rewrite)设置法_[PHP教程]
Reading number is top 10 pictures
9.3阅兵全景图3-外国方阵梯队和坦克方阵梯队
29 the belle stars after bath figure5
西游日记3
Is said to be a Chinese female artist fame explicit pictures before1
BingBingFan apple dew point photo gallery3
可爱的狗熊们
30 beautiful school beauty3
From China fortress sora aoi4
青春清纯美女大集合4
含苞欲放的素颜美少女2
Download software ranking
Unix video tutorial18
Visual C++界面编程技术
双旗镇刀客B
dreamweaver8中文版
Tram sex maniac 2 (H) rar bag8
The cock of the Grosvenor LTD handsome
SQL2000 For 4IN1
Boxer vs Yellow4
虚拟机汉化软件
Rio big adventure
delv published in(发表于) 2014/1/6 9:10:27 Edit(编辑)
在ASP.Net,2.0中实现多语言界面的方法_[Asp.Net教程]

在ASP.Net,2.0中实现多语言界面的方法_[Asp.Net教程]

在ASP.Net 2.0中实现多语言界面的方法_[Asp.Net教程]

1. 跟以前一样做界面,只是注意,把所有需要有多语言界面的文字都用label来做


2. 做完以后,在Solution Explorer里选中这个文件,选Tools->Generate Local Resource


3. 你会发现生成了一个目录,App_LocalResources;这个目录里多了一个resx的文件。比如你的aspx文件是default.aspx,它就会生成一个叫做default.aspx.resx的文件。


4. 打开这个文件看看,原来在label中的那些文字都跑到这里来了


5. 打开原来的aspx文件看看source,会发现源码变了:


<%@ Page Language="VB" MasterPageFile="~/MasterPage.master" AutoEventWireup="false" CodeFile="Default.aspx.vb" Inherits="Default2" title="Untitled Page" Culture="auto" meta:resourcekey="PageResource1" UICulture="auto" %>


…………



6. 注意这里:meta:resourcekey="PageResource1" 和meta:resourcekey="Localize1Resource1" 这就表示这里的文字是从资源中读取的。


7. OK现在来做另一种语言的资源文件。很简单,copy Default.aspx.resx再paste一下,然后rename为Default.aspx.fr-fr.resx注意fr-fr是你要做的语言的名字。大家如果看dvdrip的话,应该觉得这跟字幕文件很像吧?


8. 有人说我怎么知道那个语言叫什么名字呢?很简单,打开ie,tools->internet options -> languages -> add,方框中间的就是了。


9. 现在开始编辑其他资源的文字。打开Default.aspx.fr-fr.resx,对照着原来的内容,把里面的内容改成法语的。


10. 到此为止,我们就完成了第一阶段。ASP.Net会根据用户的语言偏好来选择显示的语言。把IE里的设置改一下,在我们刚说过的地方改成fr-fr,打开这一页看看?如果是法语,恭喜你。如果不是,回头重做……


11. OK,下一步,我们要允许用户选择自己的语言,而不是自动。我们会用cookie存取用户的选择。在Application级别,我们读取这个cookie并设置适当的culture和uiculture。当然,第一次进来的时候,我们还是要读取浏览器的设置,这个可以从Request.UserLanguages中获得。


Private SupportedLanguages As String() = {"en-us", "fr-fr"}


Public Const LANGUAGE_COOKIE_NAME As String = "UserLanguage"


Sub Application_AcquireRequestState(ByVal sender As Object, ByVal e As EventArgs)


Dim languageCookie As HttpCookie = Request.Cookies(LANGUAGE_COOKIE_NAME)


Dim language As String = String.Empty


If (languageCookie Is Nothing) Then


Dim userLanguages As String() = Request.UserLanguages


Dim index As Integer


For i As Integer = 0 To userLanguages.Length - 1


index = Array.IndexOf(SupportedLanguages, userLanguages(i))


If index >= 0 Then


language = SupportedLanguages(index)


Exit For


End If


Next


If language = String.Empty Then _


language = SupportedLanguages(0)


Response.Cookies.Add(New HttpCookie(LANGUAGE_COOKIE_NAME, language))


Else


language = languageCookie.Value


End If


Dim culture As CultureInfo = New CultureInfo(language)


System.Threading.Thread.CurrentThread.CurrentUICulture = culture


End Sub


12. 然后我们要有一页让用户选择语言,比如我们用两个button来做。在点击这个button之后,我们要设置这个cookie为适当的语言:


Protected Sub Button2_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button2.Click


SetLanguage("fr-fr")


End Sub


Protected Sub SetLanguage(ByVal language As String)


Response.Cookies(Global.ASP.global_asax.LANGUAGE_COOKIE_NAME).Value = language


Dim culture As CultureInfo = New CultureInfo(language)


System.Threading.Thread.CurrentThread.CurrentUICulture = culture


Server.Transfer(Request.Path)


End Sub


注意最后的Server.Transfer(Request.Path) ,这是为了重新读取这一页,这样这一页也会显示新选择的语言。


13. 最后我们要去掉ASP.Net的自动选择。从Default.aspx中去除:


Culture="auto" UICulture="auto"


14. 打开来看一看吧!


来源:网络







添加到del.icio.us 添加到新浪ViVi 添加到百度搜藏 添加到POCO网摘 添加到天天网摘365Key 添加到和讯网摘 添加到天极网摘 添加到黑米书签 添加到QQ书签 添加到雅虎收藏 添加到奇客发现 diigo it 添加到饭否 添加到飞豆订阅 添加到抓虾收藏 添加到鲜果订阅 digg it 貼到funP 添加到有道阅读 Live Favorites 添加到Newsvine 打印本页 用Email发送本页 在Facebook上分享


Disclaimer Privacy Policy About us Site Map

If you have any requirements, please contact webmaster。(如果有什么要求,请联系站长)
Copyright ©2011-
uuhomepage.com, Inc. All rights reserved.