diff --git a/src/MeoAsstGui/Helper/Localization.cs b/src/MeoAsstGui/Helper/Localization.cs index 4c659480de..c68c2f4f4c 100644 --- a/src/MeoAsstGui/Helper/Localization.cs +++ b/src/MeoAsstGui/Helper/Localization.cs @@ -83,9 +83,15 @@ namespace MeoAsstGui /// Gets a localized string. /// /// The key of the string. + /// The language of the string /// The string. - public static string GetString(string key) + public static string GetString(string key, string culture = null) { + if (string.IsNullOrEmpty(culture)) + { + culture = Localization.culture; + } + var dictionary = new ResourceDictionary { Source = new Uri($@"Resources\Localizations\{culture}.xaml", UriKind.Relative), diff --git a/src/MeoAsstGui/ViewModels/SettingsViewModel.cs b/src/MeoAsstGui/ViewModels/SettingsViewModel.cs index 09df29f032..73edfe96df 100644 --- a/src/MeoAsstGui/ViewModels/SettingsViewModel.cs +++ b/src/MeoAsstGui/ViewModels/SettingsViewModel.cs @@ -1837,12 +1837,12 @@ namespace MeoAsstGui var backup = _language; ViewStatusStorage.Set("GUI.Localization", value); - System.Windows.Forms.MessageBoxManager.Yes = Localization.GetString("Ok"); - System.Windows.Forms.MessageBoxManager.No = Localization.GetString("ManualRestart"); + System.Windows.Forms.MessageBoxManager.Yes = Localization.GetString("Ok", value); + System.Windows.Forms.MessageBoxManager.No = Localization.GetString("ManualRestart", value); System.Windows.Forms.MessageBoxManager.Register(); var result = MessageBox.Show( - Localization.GetString("LanguageChangedTip"), - Localization.GetString("Tip"), + Localization.GetString("LanguageChangedTip", value), + Localization.GetString("Tip", value), MessageBoxButton.YesNo, MessageBoxImage.Question); System.Windows.Forms.MessageBoxManager.Unregister();