【WinRT】多语言化应用程序名称

在Windows Phone 8的时候,要对应用程序在列表中显示的名称和锁定到开始屏幕的磁贴的名称进行多语言化是十分困难的,需要使用C++建立一个多语言资源库。但是,在WinRT中,这变得简单多了,无需再使用C++,资源文件即可解决。当然,在WinRT中,磁贴中的名称跟应用名称是一致的,不再区分。

首先,我们需要在工程目录建立相应的资源文件(resw),如下图:

根文件夹的名字必须为"Strings"。

然后Strings文件夹里的子文件夹的名称为语言名称,图中的则是简体中文和美国英文。

接下来在Resources.resw文件中添加一项用于测试:

zh-CN的Resources.resw:

en-US的Resources.resw:

修改MainPage。

<Page x:Class="LocalizationDemo.MainPage"
      xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
      xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
      xmlns:local="using:LocalizationDemo"
      xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
      xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
      mc:Ignorable="d"
      Background="{ThemeResource ApplicationPageBackgroundThemeBrush}">

    <Grid>
        <StackPanel>
            <TextBlock x:Uid="txtTest" />
        </StackPanel>
    </Grid>
</Page>

定义一个控件的x:Uid跟资源文件中的名称的点号前相同。

运行程序:

zh-CN时:

然后进入设置:

进入语言

添加语言,找English(United States)

添加后重启,再次进入程序。

可以见到效果了,如果不成功,请认真仔细检查以上基础步骤是否成功!

接下来开始进行应用程序名称的多语言化:

在Resources.resw中添加一项新的,这里我命名为DisplayName。

zh-CN的:

en-US的:

接下来关键的一步来了,修改Package.appxmanifest:

像上面的图片,修改显示名称为ms-resource:DisplayName。同理,这里的说明也可以按照同样的方法修改。

接下来就可以运行了。

zh-CN:

en-US:

时间: 2024-10-19 19:25:10

【WinRT】多语言化应用程序名称的相关文章

ios 应用中的文字多语言化

一.应用中的文字多语言化 1.Step 1:为应用添加多语言版本 2.Step 2:编程中的变化 要实现多语言,在编程中就不能直接用NSString 了,而是使用 NSLocalizedString(key, comment) key是对应显示的NSString,comment则为注释 3.创建Localizable.strings文件 文件名字为Localizable时用 NSLocalizedString(@"title", nil)即可 当自定义文件名字时用 NSLocalize

(转) IOS程序名称及内容国际化(本地化)

1.IOS程序名称国际化 1.1 新建一个Single View app模版项目,命名为Localization. 1.2 新建后,可以看到工作目录结构文件如下,单击InfoPlist.strings,查看右边的属性,在Localization栏添加语言.      1.3 添加完成后打开对应语言文件,比如English的添加 CFBundleDisplayName="China"; Chinese文件添加 CFBundleDisplayName="中国"; 运行,

C语言编写cgi程序(下)

在<<C语言写cgi程序(上)>>中,我们大概知道了cgi的工作原理.今天我们看看c语言写的cgi,是怎么来处理数据的.  c语言中,通过getenv("环境变量")函数来获取页面传送给cgi的数据,一般通过printf()返回给页面一些数据. 其中C语言中的环境变量包括: HTTP-REFERER:调用该CGI程序的网页的URL.  REMOTE-HOST:调用该CGI程序的Web浏览器的机器名和域名.  REQUEST- METHOD:指的是当Web服务器传

IBM的云平台Bluemix使用初体验——创建Go语言 Web 应用程序,添加并使用语言翻译服务

概述 上篇讲了:创建PHP Web 应用程序,添加并使用语言翻译服务 通过本文学习,你将能够在IBM的云平台Bluemix上创建自己的Go语言 Web 应用程序,添加并使用语言翻译服务,发布自己的GO语言Web应用到云服务器上. 本地开发测试环境:Windows 7 x64,Go,与其它Web后端语言不同,Go语言需要自己编写Web服务器. 有关本地环境的搭建与基础学习,请参考: <Go语言入门>如何在Windows下安装Go语言编程环境 <Go语言入门>第一个Go语言程序--He

Ubuntu下在Eclipse IDE for C/C++ Developers中怎样执行C语言的GTK程序?(已解决)

(已解决.详见Ubuntu 12.04下在Eclipse IDE for C/C++ Developers中执行C语言的GTK程序) 按"Ubuntu下GTK的安装.编译和測试"(http://www.cnblogs.com/niocai/archive/2011/07/15/2107472.html)所说步骤,最终安装成功了GTK,非常开心,以为近一个月的困扰要攻克了.但在Eclipse IDE for C/C++ Developes中一測试.出现找不到gtk/gtk.h头文件的错误

Ubuntu 12.04下在Eclipse IDE for C/C++ Developers中运行C语言的GTK程序

哈哈哈--终于搞定了GTK程序的编译与运行,纠结了近一个月的问题终于得以解决,痛快!近一个月来,不断百度.发博文.百度知道提问.csdn提问--经常发私信.评论博文麻烦大牛,比如sunny2038.轻飘风扬.Sun1956--在此对所有帮助我的人表示感谢! 特别感谢csdn的sunny2038,他的博文<Windows和Ubuntu11.10在Eclipse中配置C和GTK>和热心回复给了我很大的帮助! Neo E. Cai的博文<Ubuntu下GTK的安装.编译和测试>对我具有非

delphi中最小化其他程序及所有程序最小化(使用 shell.minimizeAll 和自己寻找窗口这两种办法)

1.所有程序最小化 uses ComObj; var shell : OleVariant; begin shell := CreateOleObject('Shell.Application'); shell.minimizeAll; end; 2.最小化其他程序 spy++ 查找要最小化的程序classname var Indicador :Integer; begin // Find the window by Classname Indicador := FindWindow(PChar

用C++语言开发Android程序 配置开发环境

如果你是一个C++语言的死忠,你喜欢C++语言到了偏执的状态,如果不想学习Java语言,或者你很讨厌Java语言,如果你认为Java虚拟机的内存占用太多和执行低效.如果你过度关注Andoird程序的执行效率,对Android程序的执行速度过于敏感,喜欢自己用手动档来控制程序的内存和线程等资源,如果你在其他平台下用C++语言开发了一个程序,想要移植到Android平台下,本教程就是为了满足你的以上诸多怪癖而发布的,本文的目的就是指导你学习如何只用C++语言来开发Android程序,而不使用任何其他

C语言中的程序结构

C语言中的程序结构有三种,分别是顺序结构.选择结构和循环结构. 一.按照语句的先后顺序执行的程序结构,称为顺序结构. 下面以一个求三角形面积的例子进行说明,其代码如下: 例1.1 1 #include<stdio.h> 2 int main() 3 { 4 int width,height,s; 5 printf("请输入三角形的底宽:\n"); 6 scanf("%d",&width); 7 printf("请输入三角形的高:\n&q