我有几个 DatePickers,其中许多默认情况下没有日期。当给定的 DatePicker 有数据时,我希望它显示日期,但如果没有,我希望它在该日期的数据为空时显示默认的“选择日期”文本。
在我为 DatePicker 创建 DataBinding 之前,它会在我的所有 DatePickers 上显示此文本,但在我创建 DataBinding 之后,它是 DateTime 值,该值不能为空值。是否有不同的数据类型接受 DatePicker 会接受的空值,或者是否有更好的方法让 DatePicker 显示“选择日期?”
我是编程新手,所以如果我没有说清楚或包含一些必需的信息,请原谅。我可以提供任何需要的东西。随便问问。
SelectedDate
DatePicker
的属性是 DateTime?
类型,所以它是 nullable .
如果你的 View 模型中有这个:
public DateTime DateTimeInVm { get; set; }
在你看来是这样的:
<DatePicker SelectedDate="{Binding DateTimeInVm}"></DatePicker>
那么是的,输出将是:
因为正如你所说,DateTime
是一个struct
所以它不能是null
并且会被初始化为DateTime.MinValue
。
但是如果你在 View 模型中有这个:
public DateTime? DateTimeInVm { get; set; }
结果将是:
因此请尝试将您绑定(bind)到的属性更改为可为 null 的 DateTime
。
我是一名优秀的程序员,十分优秀!