有网友看了上一篇文章《C# 多语言利器 - ResX Manager》后,提出疑问:
這個多語言切換不重啟不能刷新,有沒有方案?

其實是有的,國內一開源大神提供了一個 wpf 擴展庫,其中就有多語言切換實現,我們先看效果:

具體使用請接著往下看:
1 開源庫實現多語言動態切換
GitHub 地址:点击访问

怎麼安裝?
直接 nuget 搜索安裝即可:

2 如何使用?
2.1主工程初始化之前
添加資源文件引用
I18nManager.Instance.Add(LQClass.AdminForWPF.I18nResources.UiResource.ResourceManager);
2.2 prism 模塊中初始化
如果使用Prism实现模块化,也需要在模块构造函数中引用模块的资源文件
I18nManager.Instance.Add(LQClass.ModuleOfLog.I18nResources.UiResource.ResourceManager);
動態語言切換
這裡比較靈活了,切換語言時,保存語言標識到配置文件,程式啟動時設置配置的語言即可,動態切換語言時也是相同的代碼:
var culture = new System.Globalization.CultureInfo(language);
I18nManager.Instance.CurrentUICulture = culture;