一千萬個為什麽

搜索

WPF:如何在運行時更改CurrentUICulture

我試圖更改我的WPF應用程序在單擊事件中使用的語言,但它不會更改。

private void menuItemGerman_Click(object sender, RoutedEventArgs e)
{
   Settings.Default.Culture = "de-DE";

   Thread.CurrentThread.CurrentCulture = new CultureInfo(Settings.Default.Culture);
   Thread.CurrentThread.CurrentUICulture = new CultureInfo(Settings.Default.Culture);
}

我錯過了什麽?

最佳答案

我錯過了什麽?

您更改了使用該線程註冊的文化,String.Format現在將使用它,但您需要重新加載WPF層次結構中的所有本地化項目。

WPF Localization – On-the-fly Language Selection has more information.

轉載註明原文: WPF:如何在運行時更改CurrentUICulture