微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Silverlight技术调查(3)——国际化

网上有很多关于Silverlight国际化的说明,包括MSDN的示例,都没有强调一点,下面以红色标示,
基础国际化知识请先参考MSDN相关章节,关键步骤要点说明为:

1、资源多个资源文件一个名为Resource.resx
认的一个声明要为public;
程序集信息/非特定语言选择认的(一般为english)。
2、项目属性文件csproj(用文本编辑器打开)
添加非特定语言外要支持的语言:

            <SupportedCultures>zh-CN;jp</SupportedCultures>

3、作成包装类(参考MSGN示例)如:LocalizedStrings
4、App.xaml中(注意加粗部分替换成你的相应内容):

	<Application.Resources>
		<local:LocalizedStrings xmlns:local ="clr-namespace:SilverlightApplicationLocale" x:Key="LocalizedStrings" />
	</Application.Resources>

5、程序引用(注意加粗部分替换成你的相应内容):

<Button Content="{Binding Path=Resource.Hello,Source={StaticResource LocalizedStrings }}"

6、通过引用的HTML传递local信息:

        <object data="data:application/x-silverlight-2," type="application/x-silverlight-2" width="100%" height="100%">
		  <param name="source" value="RichEdit.xap"/>
		  <param name="onError" value="onSilverlightError" />
		  <param name="background" value="white" />
		  <param name="minRuntimeVersion" value="4.0.50826.0" />
		  <param name="autoUpgrade" value="true" />
		<param name="culture" value="ja" />
		<param name="uiculture" value="ja" />
		  <a href="http://go.microsoft.com/fwlink/?LinkID=149156&v=4.0.50826.0" style="text-decoration:none">
 			  <img src="http://go.microsoft.com/fwlink/?LinkId=161376" alt="获取 Microsoft Silverlight" style="border-style:none"/>
		  </a>
	</object>

PS

              若程序动态改变区域:

       private void Application_Startup(object sender,StartupEventArgs e)
       {
	   CultureInfo c = new CultureInfo("zh-CN");
	   Thread.CurrentThread.CurrentUICulture = c;
	   Thread.CurrentThread.CurrentCulture = c;
       }

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐