无法使用Dispatcher从DatePicker读取DateTime。调用C#
我有一些Windows框架演示应用程序 后台工作人员执行的所有操作。我正在尝试选择日期无法使用Dispatcher从DatePicker读取DateTime。调用C#,c#,wpf,C#,Wpf,我有一些Windows框架演示应用程序 后台工作人员执行的所有操作。我正在尝试选择日期 DateTime StartDate = DateTime.MinValue; StartOfferDatePicker.Dispatcher.Invoke( new Action(delegate() { StartDate = StartOfferDatePicker.GetValue(DatePicker.SelectedDateProperty); } ));
DateTime StartDate = DateTime.MinValue;
StartOfferDatePicker.Dispatcher.Invoke(
new Action(delegate()
{
StartDate = StartOfferDatePicker.GetValue(DatePicker.SelectedDateProperty);
}
));
我得到错误
无法正确地将“对象”转换为系统。DateTime
不。。。声明的返回类型只是对象
。如果该值实际上是一个DateTime
,您应该能够强制转换:
StartDate = (DateTime) StartOfferDatePicker.GetValue(DatePicker.SelectedDateProperty);
请注意,这与调度程序.Invoke
无关。如果事件处理程序中有相同的代码,则会看到完全相同的问题
但是,仅使用属性可能更简单:
StartDate = StartOfferDatePicker.SelectedDate.Value;
.Value
部分是因为SelectedDate
的类型为null
。当然,如果没有选择日期,这会很糟糕——你应该考虑你想如何处理这个问题。(可能您的StartDate
变量也应该是一个null
)您可以使用StartDate=StartOfferDatePicker.SelectedDate.Value.Date代码>