WPF 多语言实现】的更多相关文章

近期由于朋友邀请帮忙给一个开源的游戏“外挂”做一个I18N的解决方案,恰好也是WPF做的,之前有过相关经验,就忙了一个星期终于搞定了,已经提交给作者了,现在这里做一个分享. 这里分享下我个人Fork的GitHub地址: https://github.com/Cuiyansong/Hearthstone-Deck-Tracker 什么是I18N 简单来说就是多语言,为什么多语言叫I18N,请参见结语中的引用. 如何实现 其实WPF上实现多语言于winform有些相似,就是更换软件运行时资源(Res…
很多国际化的程序都提供了多语言的选项,这样方便不同国家的使用者更方便的使用软件.这篇博客中将介绍在WPF中实现多语言的方式. 方式一,使用WPF动态资源的方式实现.先简单介绍下StaticResource和DynamicResource,这两者的区别在于动态资源改变后会实时的体现出来,而静态资源只加载一次,后面对资源的任何改变都不会体现出来.显而易见,使用动态资源会降低系统的性能. 新建一个工程,添加ZH.xaml与EN.xaml两个资源文件,用于放置界面显示的文案: MainWindow.xa…
Metro插件系统系列就暂时停一下,这次我们讨论一下WPF的资源本地化实现,主要用到的:CultureInfo,ResourceManger,MarkupExtension,RESX文件,这些都是.NET框架提供的. 项目结构: 运行结果: 可在程序运行时,实时切换语言 CultureInfo CultureInfo类表示有关特定区域性的信息,包括区域性的名称.书写体系和使用的日历,以及有关对常用操作(如格式化日期和排序字符串)提供信息的区域性特定对象的访问.CultureInfo类的实例化一般…
WPF实现起来非常现代化,可以参考 https://www.cnblogs.com/yang-fei/p/4854460.html winform主要说一下实现过程和注意点,实现参考AutoUpdater.NET   https://github.com/ravibpatel/AutoUpdater.NET 1.首先建立全局资源,命名严格依据C# CultureInfo 规范,如下图 注意:新建立的全局资源需要手动拖到Properties下 全局的语言资源方法使用如下 语言使用的系统识别的 定义…
同时兼容这么多需求的解决方案 我想到的 只有通过 动态切换加载资源字典  前端用绑定的模式 达到托管最大化 多语言举例 我编辑了 两个 语言包 一个中文 一个英文  (语言包这个最好用T4 写个模板,这样添加新语言接口的时候不会遗漏,只是建议) en-us.xaml <ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://s…
1.首先安装Multilingual App Toolkit   2.新建项目,在VS中点击"工具" -> "Multilingual App Toolkit" -> "启用选定内容"     如果出现上述Issue, 打开项目AssemblyInfo.cs文件,加入如下代码片段,然后重复Step 2.   [assembly: NeutralResourcesLanguage("en-US")]   3.新建资源…
1.http://www.cnblogs.com/bear831204/archive/2009/03/17/1414026.html 2.http://www.cnblogs.com/horan/archive/2012/04/20/wpf-multilanguage.html#ViaResx 3.http://blog.csdn.net/licher/article/details/4187873…
前段时候写了一个WPF多语言界面处理,个人感觉还行,分享给大家.使用合并字典,静态绑定,动态绑定.样式等东西 效果图 定义一个实体类LanguageModel,实际INotifyPropertyChanged接口 using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.ComponentModel; namespace WpfApplication1 {…
WPF 多语言有各种实现方式.如 https://www.codeproject.com/Articles/35159/WPF-Localization-Using-RESX-Files,后来发现这个不够直接和简洁,在看到这里 https://www.cnblogs.com/yang-fei/p/4854460.html 这个朋友的实现觉得蛮不错的. 目前我觉得最好的一种或者说最适合我的一种是利用资源字典文件来做--- 就是吧各个语言创建为一个个资源字典文件,在程序启动的时候将选定的一种语言的资…
WPF四年,尤不足以替代WinForm WPF出山已四年,作为官方内定的下一代UI系统掌门,没少露脸.但这个新掌门能否胜任,仍是众多开发者的心头之虑.通过对VisualStudio 2010的编辑器部分用WPF重写,微软终于对这个胜任与否的问题给出了个证实,当然,也给WPF做了不少重要的改进,尤其是终于解决了文本看不清的问题.所以,至少从.NET 4开始,WPF应该可以比较安全的用于重要的开发项目了. 但是,使用WPF并不会象用WinForm那样顺利. 首先,它太复杂了,入门门槛很高.这种复杂性…