Windows Phone 应用程序的全球化

简介:   Windows Phone 应用程序的全球化跟Silverlight做法一样,如果大家熟悉Silverlight的全球化,可以不看此文。本文一个具体的Demo介绍wp7应用程序如何实现本地化,并在本地化的一些注意点。

  Windows Phone 应用程序的全球化跟Silverlight做法一样,如果大家熟悉Silverlight的全球化,可以不看此文。本文一个具体的Demo介绍wp7应用程序如何实现本地化,并在本地化的一些注意点。

  1. 创建windows phone 7 应用程序,命名为wp7Global。

  2. 右击项目,选择添加新项目,选择Resources File,命名为AppResource,如下图,点击确定。

  3. 假设我们程序的默认语言是英文的,则刚刚添加的资源文件就是我们程序默认的语言资源文件,右击项目wp7Global选择属性,打开属性页,点击Assembly Information按钮,将Neutral Language设置为English (United States),如下图

  4. 添加简体中文、繁体中文的资源文件,注意文件的命名规则,如我们要添加中文的源文件,则该资源文件的命名方式为AppResource.zh-CN.resx,繁体中文为AppResource.zh-TW.resx,关于更多语言的命名可以参考MSDN CultureInfo。 添加后的项目解决方案大致如下图:

  5. 关闭项目,使用文本编辑工具(如UltraEdit,EditPlus,Notepad++等)打开项目文件wp7Global.csproj,找到SupportedCultures标签,在标签中输入zh-CN;zh-TW;表示项目支持的语言。如下图:

  6. 重新打开项目,打开默认语言资源文件AppResource.resx,将Access Modifier修改为public,如下图:

  7. 创建一个用于指向语言资源文件的类,这里我们将其命名为LocalizedStrings,类中提供一个类型为资源文件的属性,具体的代码如下

  8. 将LocalizedStrings定义到项目资源中,即App.xaml中,具体代码如下

   9. 然后我们就可以在我们的程序中,使用如下的代码进行国际化了

Text="{Binding Path=Localizedresources.HelloWorld, Source={StaticResource LocalizedStrings}}"

  10. 为了演示具体的效果,这里创建一个设置语言的页面,命名为Setting,在页面中放置3个RadioButton,分为代表不同的语言,如下图:

  11. 设置它们的Check事件均为SelectLanguage,事件方法体如下:

  12. 上述事件方法中涉及到一个静态帮助类,AppSettingHelper。是一个应用程序配置信息的帮助类。其代码如下:

  13. 在三个资源文件中增加资源,HelloWorld,如下图:

  14. 在App.xaml.cs的构造函数中设置程序的语言,大致代码如下

  15. 运行程序,可以看到默认显示出来的是Hello World。点击Setting按钮,设置语言为zh-CN,然后点击开始键,重新进入程序,发现Hello World变成了“你好,世界”。

 

  ok,国际化的步骤大致如上。下面讲讲在国际化时的一些注意事项:

  1. 在资源文件中不要加入类似这样的字符串<link> 等,Key一般是字符串,并且能够更好的描述其代表的字符串,如AppSetting,就可以代表应用程序设置。

  2. 一门语言一个资源文件。

  3. 将文本框等控件启动multiline ,将WRAP设置为text-wrapping 以允许字符串在不同言语下长度不一致的问题。

  4. 将一个句子本地化,不要把句子拆开来,中间的变量我们可以使用{0}代替

  更多的注意事项参考 http://msdn.microsoft.com/en-us/library/ff967552(v=VS.92).aspx

   本文的示例代码下载地址如下:

目录
相关文章
|
Android开发 iOS开发 Windows
Windows Phone 寿终正寝了,这些经典机型你还记得吗?
不久前,随着最后一家WP手机厂商惠普宣布取消今后Windows Phone的研发计划,以及微软官方声明对WP8.1系统今后所有升级维护的终止,WP手机,作为曾经和安卓手机、苹果手机并驾齐驱的三大智能手机之一,正式寿终正寝。
2233 0
Windows Phone 寿终正寝了,这些经典机型你还记得吗?
|
XML 开发框架 前端开发
Windows Phone快速入门需掌握哪些能力
在此之前,先普及下Windows Phone的概念和开发工具的介绍。 Windows Phone是微软公司开发的手机操作系统,它将微软旗下的Xbox Live游戏、Xbox Music音乐与独特的视频体验集成至手机中。2012年6月21日,微软正式发布Windows Phone 8,采用和Windows 8相同的Windows NT内核,同时也针对市场的Windows Phone 7.5发布Windows Phone 7.8。
475 0
Windows Phone快速入门需掌握哪些能力
|
移动开发 Android开发 开发者
Windows Phone 8.1 新功能汇总 开发者预览版开放下载
在Build 2014大会上,微软正式发布了传闻已久的Windows Phone 8.1系统,所有的Windows Phone 8手机都可以升级,微软这次可谓是十分厚道。虽然并非迭代升级,但WP 8.1还是拥有很多重大更新,对于微软进一步完善移动平台拥有积极的意义。下面,就一起来了解一下WP 8.1的主要新特性。
577 0
Windows Phone 8.1 新功能汇总 开发者预览版开放下载
|
编解码 前端开发 JavaScript
Windows Phone 下开发 LBS 应用
基于位置的服务(Location Based Service,LBS),它是通过电信移动运营商的无线电通讯网络(如GSM网、CDMA网)或外部定位方式(如GPS)获取移动终端用户的位置信息(地理坐标,或大地坐标),在GIS(Geographic Information System,地理信息系统)平台的支持下,为用户提供相应服务的一种增值业务。
555 0
|
Windows 数据安全/隐私保护 C#

热门文章

最新文章