いくつかの情報を含むシンプルなフォーム。以下のように、ドロップダウンで言語を選択します。
<controls:LanguageControl Width="155" HorizontalAlignment="Left" Margin="0,0,0,5" SelectedCultureInfo="{Binding CurrentLanguage,Mode=TwoWay}"></controls:LanguageControl>
private CultureInfo _lang;
public CultureInfo CurrentLanguage
{
set
{
_lang = value;
if (!System.Threading.Thread.CurrentThread.CurrentUICulture.Equals(_lang))
{
System.Threading.Thread.CurrentThread.CurrentUICulture = _lang;
AppSettings.SetValue(SettingsKeys.LANGUAGE, _lang.LCID);
System.Threading.Thread.CurrentThread.CurrentUICulture = value;
WPFCommon.Localization.LocalizeDictionary.Instance.Culture = value;
Rhino.Main.Properties.Resources.Culture = value;
OnPropertyChanged("CurrentLanguage");
}
}
get
{
if (_lang == null)
{
_lang = new CultureInfo(Convert.ToInt32(AppSettings.GetValue(SettingsKeys.LANGUAGE)));
}
return _lang;
}
}
アプリケーションを再起動すると、すべてのテキストが選択した言語に置き換えられます。
しかし、アプリケーションを再起動せずにすぐにどうすればよいでしょうか?