学习使用ASP.NET 2.0的本地化

譬如我有一个登陆页面,上面有两个Label和两个Textbox,页面命名为Login.ASPx,控件命名为lbl_UserName,lbl_Password,txt_UserName,txt_Password。

首先可以在网站上新建一个App_LocalResources的文件夹,然后新建一个资源文件,命名为Login.ASPx.resx
命名需要跟匹配的页面名字相同。然后再新建另一个资源文件,命名为Login.ASPx.zh-Cn.resx

Login.ASPx.resx 这个为默认的,而Login.ASPx.zh-Cn.resx这个为当浏览器默认语言设为中文的时候调用的。

打开Login.ASPx.resx文件: 
名称 值
LabelResource1.Text Username 
LabelResource2.Text Password 

打开Login.ASPx.zh-Cn.resx文件:
名称 值:
LabelResource1.Text 用户名 
LabelResource2.Text 密码 

然后,在我们的页面代码中

1<ASP:Label ID="lbl_UserName" runat="server"></ASP:Label>
2<ASP:Label ID="lbl_Password" runat="server"></ASP:Label>改为
1<ASP:Label ID="lbl_UserName" runat="server" Text="<%$ Resources:LabelResource1.Text %>"></ASP:Label>
2<ASP:Label ID="lbl_Password" runat="server" Text="<%$ Resources:LabelResource2.Text %>"></ASP:Label>
3
最后,在页面的Page属性中,加上 Culture="auto:zh-Cn" UICulture="auto:zh-Cn" ,默认设为了中文。

编译便可以看到效果,当浏览器默认语言为英文时,可以看到两个Label的显示为Username和Password。
当浏览器默认语言为中文时,可以看到两个Label的显示为用户名和密码。

AspNet技术学习使用ASP.NET 2.0的本地化,转载需保留来源!

郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。