ASP.NET 2.0上实现本地化(2)
用程序读取方式如下:
imagebutton button1 = new imagebutton();
// other initialization code
button1.id = "btnidesign";
button1.accesskey = (string) base.getlocalresourceobject("imagebuttonresource1.accesskey");
button1.alternatetext = (string) base.getglobalresourceobject("glossary", "missionstatement");
button1.imageurl = (string) base.getlocalresourceobject("imagebuttonresource1.imageurl");
button1.tooltip = (string) base.getlocalresourceobject("imagebuttonresource1.tooltip");
button1.visible = (bool)
base.getlocalresourceobject("imagebuttonresource1.visible", typeof(control), "visible");
本地化html控件和文本:
html控件:html控件不能用前面说的两种表达式来指定资源,除非是让它runat=server,不过对于页面的title比较特殊,它也会作为页面的一个对象自动生成本地资源
<%@ page language="c#" codefile="default.aspx.cs" inherits="_default" meta:resourcekey="pageresource1" %>
不过,我们也可以为它制定全局资源
<head runat="server">
<title>
<asp:literal text='<% $ resources: glossary, defaultpagetitle %>' runat="server"></asp:literal>
</title>
</head>
本地化文本:
对于项目中很多静态的文本,我们可以使用localize控件来包含这些文字,其实这个控件和literal相似,但是它能在设计模式下随意修改里面的文字内容,看下怎么访问本地资源和全局资源
<asp:localize id="welcomecontent" runat="server" meta:resourcekey="welcome">welcome!</asp:localize>
<asp:localize id="welcomecontent" runat="server" text='<%$ resources: glossary,
welcometext%>'>welcome!</asp:localize>
多语言实现:[iocblog.net 来源]
从默认的资源文件复制一个新的的资源文件,只要在resx前面加上地区代号,逐项编辑即可,如下设置后浏览器会自动根据设置(工具-选项-语言)调用新的资源文件
<%@ page uiculture="auto" culture="auto">
当然你也可以通过web.config文件指定一种语言
<system.web>
<globalization culture="es-es" uiculture="es">
</system.web>
文章整理:iocblog
版权申明:本站文章均来自网络,如有侵权,请联系我们,我们收到后立即删除,谢谢!
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有。