public void ChangeLanguage(string languageCultureName) { if (string.IsNullOrEmpty(languageCultureName)) { throw new ArgumentNullException(nameof(languageCultureName)); } if (AvailableLanguages.All(ci => ci.Name != languageCultureName)) { throw new ArgumentException($"Unsupported language: {languageCultureName}"); } if (languageCultureName != SelectedLanguage.Name) { _languageLoader.StartLoadLanguage(languageCultureName, LoadLanguage); } }