UWP 对 Globalization and localization 的支持非常好,可以非常容易地实现应用程序本地化。
所谓本地化,表现最为直观的就是UI上文字和布局方式了,针对文字,提供不同的语言资源文件即可,而针对布局方式,有影响的一般是阿拉伯地区的RTL,阅读顺序是从右到左,需要稍稍适配一下。
具体实现步骤:
微软官方文档 Localize strings in your UI and app package manifest (https://docs.microsoft.com/en-us/windows/uwp/globalizing/put-ui-strings-into-resources)
注意事项:
  1.多语言的文件 Resources.resw 必须放在以语言代码为文件夹名称的目录下,默认情况下系统才能识别;
 
  2.多语言文件夹放在任何目录都可以,只需要注意的就是文件夹的名称必须是语言代码,具体的语言代码可以这儿查询(https://docs.microsoft.com/en-us/windows/uwp/publish/supported-languages
 
  3.编译打包时,系统会根据找到的多语言文件夹,在AppManifest文件的 Resources 节点下面,生成对应的 Resource 子元素 ,但前提是该节点下面必须有如下元素

<Resource Language="x-generate"/>

  4.针对需要布局RTL的语言,如希伯来语,只需要添加例如语言代码为 “he” 的资源文件即可,系统会自动对标题栏等地方进行RTL布局,但也仅限于标题栏,页面内部的RTL,还需要手动设置 FlowDirection 为 RightToLeft;

 
  5.如果在运行时,你的 app 不支持当前电脑系统选择的语言,则默认会使用 Default Language 中设置的语言,该设置选项在你 app 项目的 .csproj 文件中;

最新文章

  1. C#生成带logo的二维码
  2. poj1399 hoj1037 Direct Visibility 题解 (宽搜)
  3. 三目运算符是不是在bug中躺了枪_折腾了一整天
  4. 给一系列的div中的第一个添加class
  5. c语言 sscanf()函数
  6. [转]windows下srand48()和drand48()的问题
  7. Jetty开发指导:HTTP Client
  8. 鸟哥Linux私房菜知识点总结6到7章
  9. 页面开发辅助类—HtmlHelper初步了解
  10. 小米wifi
  11. C#中的静态成员和非静态成员
  12. 【NOIP2014提高组】联合权值
  13. Request processing failed; nested exception is java.lang.IllegalArgumentException: No converter found for return value of type: class cn.e3mall.pojo.TbItem
  14. Rlwrap工具的安装和配置
  15. Linux 检查端口gps命令
  16. QYH练字
  17. Eric6启动时“无法定位序数4540于动态链接库LIBEAY32.dll”的错误
  18. OdiSendMail
  19. PowerCollections
  20. Apache HBase Performance Tuning 官文总结

热门文章

  1. NOI2001炮兵阵地
  2. 【Demo Project】AjaxSubmit+Servlet表单文件上传和下载
  3. 微信小程序腾讯云php后台解决方案
  4. go学习(二)目录管理
  5. 403 forbidden 错误解决方案
  6. 机器学习实战笔记(Python实现)-09-树回归
  7. Golang的CSP很酷?其实.NET也可以轻松完成
  8. Unix 让进程安全地退出
  9. Ubuntu14.04上修改主机名
  10. css实现div中图片高度自适应并与父级div宽度一致