2016-08-23 81 views
1

我實際上發現this,但像OP說這是一個hacky解決方案,並像投票說不是一個美麗的。我的程序有一個窗口。WPF DatePicker日期不與文化切換

我有一個有2種可能的文化,de-DE和en-US的UI和一個切換語言的按鈕。

當我按下該按鈕時,每個文本都會更改,只有DatePickers texbox中的文本纔會更改,直到我單擊DatePickers按鈕,然後它將顯示的日期更改爲正確的格式(並打開DatePicker彈出窗口)。

如何使用語言顯示日期切換?是否有一些wpf選項可以用來更新顯示的日期?

只有綁定它是SelectedDate="{Binding Path=FileDate, Mode=TwoWay},到目前爲止效果很好。

我試着做語言上的開關以下,但它並沒有使文本的變化:

Thread.CurrentThread.CurrentCulture = new System.Globalization.CultureInfo((string)getSetting("Language")); 
Thread.CurrentThread.CurrentUICulture = new System.Globalization.CultureInfo((string)getSetting("Language")); 
FileDate = FileDate; //This one Notifies about the propertychange, so I hoped it would refresh the text. 

回答

0

好了,所以我有另外一個想法,它的偉大工程,不覺得自己像一個黑客,並且是很容易做到:

當切換語言,設定的CurrentCulture和旁邊的CurrentUICulture,我去

FileDate = DateTime.Now; 

那明顯地使DatePicker意識到文化已經發生了變化。