有網友看了上一篇文章《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;