windows8开发笔记(3)-多语言的实现

时间:2022-12-28 23:21:45

     在metro里面实现多语言和之前的.net项目有些区别,有下面几种实现多语言的方式:

1、直接在代码调用

在项目下面建立文件夹strings,根据语言建立子目录,并将资源文件放入子目录下,如下图所示

windows8开发笔记(3)-多语言的实现

注意下图是错误的...后缀不能为resx应该是resw

windows8开发笔记(3)-多语言的实现

 

在后台调用可以写成

windows8开发笔记(3)-多语言的实现

   1: var resourceLoader= ref new ResourceLoader();
   2: resourceLoader->GetString("buyRemind")。

 这里有个知识点要告诉大家,如果要获取的的资源文件名是Resources.resw 可以写成 ResourceLoader("Resources") 如果获取的资源文件名是Error.resw 那就应该写成ResourceLoader("Error"),如果是在一个新的类库如名叫:AppResourceClassLibrary里面那么就应该写成 new ResourceLoader("AppResourceClassLibrary/Resources") 其他基本类似大家琢磨一下

2、通过x:Uid获取

windows8开发笔记(3)-多语言的实现

如上图所示TextBox的Uid是tbtext,在资源文件定义了tbtext.Text为:Uid获取..所以这个TextBox 的显示出来Uid获取

 

 最后给大家附上常用的区域性代码

区域性名称 区域性代码
简体中文(中国) zh-CN
繁体中文(*) zh-TW
捷克语(捷克*) cs-CZ
丹麦语(丹麦) da-DK
荷兰语(荷兰) nl-NL
英语(英国) en-GB
英语(美国) en-US
芬兰语(芬兰) fi-FI
法语(法国) fr-FR
德语(德国) de-DE
希腊语(希腊) el-GR
匈牙利语(匈牙利) hu-HU
意大利语(意大利) it-IT
日语(日本) ja-JP
朝鲜语(韩国) ko-KR
挪威语(挪威) nb-NO
波兰语(波兰) pl-PL
葡萄牙语(巴西) pt-BR
葡萄牙语(葡萄牙) pt-PT
俄语(俄罗斯) ru-RU
西班牙语(西班牙) es-ES
瑞典语(瑞典) sv-SE