在我开发的数据库中,日期的空值存储为或者是1/3/1上午12:00'。我想要datepicker,显示"请选择日期"消息,如果SelectedDate绑定到值' 1/1/1 12:00 am'。
试过这个:
<Style TargetType="{x:Type DatePicker}">
<Setter Property="Margin" Value="5" />
<Style.Triggers>
<Trigger Property="SelectedDate" Value="01.01.0001">
<!--Please note, the app runs on a computer with German Timeformat, but I tried 01/01/01 12:00 am as well-->
<Setter Property="SelectedDate" Value="null" />
</Trigger>
</Style.Triggers>
</Style>
我也试过这个
<Setter Property="Text" Value="Please select date" />
然而,没有,如果这些都有效。我怎么能让这个工作?我遇到的一个问题是以正确的格式传递触发器的值,即DateTime Dataype。
答案 0 :(得分:0)
我会用以下两种方式之一来做这件事:
选项1
在数据进入应用程序时清理数据,将DateTime
值设置为null
,它们是'1/1/1 12:00 am'。
选项2
在您要绑定的属性的get
部分中使用条件,以便DatePicker
将该值读取为null
,例如:
private DateTime? _selectedDate;
public DateTime? SelectedDate
{
get { return _selectedDate == DateTime.Parse("01.01.0001") ? null : _selectedDate; }
set
{
if (_selectedDate != value)
{
_selectedDate = value;
NotifyPropertyChanged();
}
}
}