Windows Phone 实用开发技巧(20):ApplicationBar 的Text国际化

我们知道Windows Phone 中ApplicationBar的Text属性不是依赖属性,不能采取绑定的方法实现文本的国际化,那么我们在实际开发中是怎么实现ApplicationBar的文本多语言的呢?有如下几种方法:
1. 在后置代码中生成AppBar,文本使用资源文件
这种方法是最简单的方法,就是在将XAML代码翻译为C#代码,其中的一个好处就是Text可以国际化。
2. 使用静态资源
这个方法类似于样式,即Text={"StaticResource Appbar_Save"}的形式。

 

在练习本篇Demo之前,大家最好先看下《Windows Phone 应用程序的全球化》 ,其中涉及到的一些具体细节在本篇中就不说了。

 大致界面如下,为了方便起见,我们在改变语言后就更改当前环境的语言,而导航到另一页面后语言资源就会重新加载。

注:界面语言只有在InitializeComponent 的时候才会被重新加载 

 

首先来看下后置代码的实现方式:

 

在代码中设置Text属性,AppResource是什么?--不解释

 

再来看下静态资源的实现方式:

在页面中设置Text属性为静态字符串 

 

那这些静态资源是再哪里定义的呢?

新建三个资源XAML(跟Style一样) 

 

ok,再来看下我们改变语言时会做些什么-- 不解释:)

 

那如果让应用程序找到静态资源文件呢?我们需要将资源文件动态添加到内存中,如下:

注:由于是资源文件,所以需要加上/项目;component/ 不然会找不到资源

 

想看运行效果,自己运行Demo吧:

 





    本文转自xshf12345 51CTO博客,原文链接:http://blog.51cto.com/alexis/660322,如需转载请自行联系原作者






  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值