Calender.SelectedDate - DateTime.Now;

时间:2017-11-09 13:06:42

标签: c# wpf datetime calendar

lblService = CalService.SelectedDate - DateTime.Now;

我正在尝试计算所选日期前的天数。 这会导致程序崩溃。 我也试过

DateTime daysTillService = CalService.SelectedDate - DateTime.Now;

这会导致此错误: 无法隐式转换类型'System.TimeSpan?'到'System.DateTime'

2 个答案:

答案 0 :(得分:0)

试试这个:

int daysTillService = (CalService.SelectedDate.HasValue) ? (int)DateTime.Now.Subtract(CalService.SelectedDate.Value).TotalDays : 0;

答案 1 :(得分:0)

当您减去两个DateTime值时,实际上会返回 TimeSpan ,这就是您遇到异常的原因。

TimeSpan lblService=CalService.SelectedDate.Subtract(DateTime.Now);

然后将两个DateTime值之间的天数存储为int:

int DaysBetween=(int)lblService.TotalDays;