欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

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

程序员文章站 2022-06-14 11:37:24
譬如我有一个登陆页面,上面有两个label和两个textbox,页面命名为login.aspx,控件命名为lbl_username,lbl_password,txt_use...
譬如我有一个登陆页面,上面有两个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的显示为用户名和密码。