我結合標準的DatePicker的財產在我隱藏像這樣:WPF DatePicker的選擇不正確的日期
XAML:
<DatePicker Text="{Binding Start, Mode=TwoWay}" Width="150" BorderBrush="LightGray" VerticalAlignment="Center" Margin="3"/>
代碼:
public DateTime Start
{
get { return _start; }
set
{
_start = value;
RaisePropertyChangedEvent("Start");
}
}
在構造函數中我將值初始化爲DateTime.Now,今天是1月8日。 2014(這應該在不同的語言中不受歧視)。但是我在丹麥機器上,所以字符串格式化的值將是2014年8月1日,而不是美國風格1/8/2014。
第一個問題是日期選取器顯示格式化爲美式的值,當我打開下拉菜單時,它也會顯示8月1日。
雖然第二個問題更糟。當我選擇例如從12月1日的下降,文字說12/1/2014,這是正確的美國風格,但實際選定的日期(屬性)是1月12日,這與丹麥風格相符...
我猜這是因爲轉換爲/從DateTime的本地化字符串表示中的一些問題,但爲什麼日期選擇器忽略本地化?我該如何解決它?