我试图将一个
然而,当应用程序运行时(在调试模式下),我会得到一个绑定错误,并且日期不会显示在我的控件中:
错误: 转换器无法将类型为'System.DateTime, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089'的值转换为类型'DateTime>'; BindingExpression: Path='Model.Date' DataItem='MyProject.Common.ViewModel.TransactionViewModel, MyProject, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null'; 目标元素是'MyProject.Controls.DatePicker' (Name='null'); 目标属性是'SelectedValue' (type 'DateTime>')。
依赖属性的定义如下:
在XAML页面中,它被用作:
有什么办法可以修复这个问题,并使日期在控件中显示并进行双向绑定吗?
DateTime?
属性作为DependencyProperty使用,这样我就可以在Metro风格应用的XAML中绑定它。然而,当应用程序运行时(在调试模式下),我会得到一个绑定错误,并且日期不会显示在我的控件中:
错误: 转换器无法将类型为'System.DateTime, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089'的值转换为类型'DateTime>'; BindingExpression: Path='Model.Date' DataItem='MyProject.Common.ViewModel.TransactionViewModel, MyProject, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null'; 目标元素是'MyProject.Controls.DatePicker' (Name='null'); 目标属性是'SelectedValue' (type 'DateTime>')。
依赖属性的定义如下:
public static readonly DependencyProperty SelectedValueProperty =
DependencyProperty.Register("SelectedValue",
typeof (System.Nullable<System.DateTime>),
typeof(DatePicker),
PropertyMetadata.Create(default(DateTime?)));
在XAML页面中,它被用作:
<local:DatePicker
Margin="0,10"
SelectedValue="{Binding Model.Date, Mode=TwoWay}"
FontSize="21.333"/>
有什么办法可以修复这个问题,并使日期在控件中显示并进行双向绑定吗?