• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

C#WPF程序引用WPFLocalizeExtension第三方库实现全球化

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

 1     public static class LangHelper
 2     {
 3         /// <summary>
 4         /// 根据关键字获取当前语言环境下的提示信息
 5         /// </summary>
 6         /// <param name="key"></param>
 7         /// <param name="resourceFileName"></param>
 8         /// <param name="addSpaceAfter"></param>
 9         /// <returns></returns>
10         public static string GetLocalizedString(string key, string resourceFileName = "Langs", bool addSpaceAfter = false)
11         {
12             var localizedString = String.Empty;
13 
14             // Build up the fully-qualified name of the key
15             var assemblyName = System.Reflection.Assembly.GetExecutingAssembly().GetName().Name;
16             var fullKey = assemblyName + ":" + resourceFileName + ":" + key;
17             var locExtension = new LocExtension(fullKey);
18             locExtension.ResolveLocalizedValue(out localizedString);
19 
20             // Add a space to the end, if requested
21             if (addSpaceAfter)
22             {
23                 localizedString += " ";
24             }
25 
26             return localizedString;
27         }
28     }
View Code

 1 <Window
 2     ...
 3     xmlns:lex="http://wpflocalizeextension.codeplex.com"
 4     lex:LocalizeDictionary.DesignCulture="en-US"
 5     lex:ResxLocalizationProvider.DefaultAssembly="AppSample"
 6     lex:ResxLocalizationProvider.DefaultDictionary="Langs">
 7     <!-- 解释一下 -->
 8     <!--
 9     lex:LocalizeDictionary.DesignCulture="en-US" 默认en-US英文,zh-CN中文,这里采用英文
10     lex:ResxLocalizationProvider.DefaultAssembly="AppSample" AppSample为程序集名称
11     lex:ResxLocalizationProvider.DefaultDictionary="Langs"  找不到时,去找Langs资源下
12     -->
13     <!-- 其他代码 -->
14 </Window>  
View Code

4 GitHub

4.1 LocalizeExtension开源地址

https://github.com/XAMLMarkupExtensions/WPFLocalizationExtension

4.2 测试Demo地址

https://github.com/JeremyWu917/DynamicChangeLanguageSample

https://www.cnblogs.com/jeremywucnblog/
  本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
C#异步编程(asyncandawait)及异步方法同步调用发布时间:2022-07-13
下一篇:
c#计算一段代码的时间复杂度发布时间:2022-07-13
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap