我正在使用MVVM模式創建windows phone 8.1應用程序。我已經使用了datepicker,並且我想在viewModel中獲取datepicker的值(日期),所以我已經在viewModel中綁定了一個屬性。運行這個應用程序後,我在Visual Studio的輸出窗口中出現錯誤。轉換器無法將類型'system.datetime'的值轉換爲在windows phone 8.1中鍵入'datetime'Datepicker
錯誤:轉換器無法將類型'System.DateTime,mscorlib,Version = 4.0.0.0,Culture = neutral,PublicKeyToken = 7cec85d7bea7798e'的值轉換爲鍵入'DateTime'; BindingExpression:Path ='Date'DataItem ='App1.ViewModel.MainViewModel';目標元素是'Windows.UI.Xaml.Controls.DatePicker'(Name ='null');目標屬性是'日期'(類型'DateTime')。
這裏是我的, XAML視圖:
<DatePicker Grid.Row="1" Grid.Column="1"
VerticalContentAlignment="Center"
HorizontalContentAlignment="Center"
HorizontalAlignment="Left"
VerticalAlignment="Center" Margin="26,-0.333,0,0.5"
Date="{Binding Date}"
/>
視圖模型屬性:
private DateTime _date;
public DateTime Date
{
get { return _date; }
set
{
_date = value;
RaisePropertyChanged();
}
}
誰能幫我解決這個錯誤。
Thanks @BradleyDotNet!我已將屬性更改爲DateTimeOffset,現在錯誤消失了。但是我現在得到的財產的價值是1/1/0001 12:00:00 AM +00:00。你能告訴我如何獲得當前日期嗎? – 2015-02-10 19:22:37
@UtsavDawn表示一個非設定值。用戶沒有選擇日期嗎? – BradleyDotNET 2015-02-10 19:23:23
我剛剛檢查過,並得到了用戶從datepicker中選擇了一個值,但我仍然得到相同的值。 – 2015-02-10 19:37:13