我有一个 DatePicker 绑定到对象内的 DataTime,并且在运行时,而不是 DatePicker 中的字符串“Select a Date”,而是显示“1/1/0001”,这使得很难使用实际的日历。当我将 DatePicker 与字符串绑定时,我没有遇到问题,但是将其更改为 DateTime 就可以了。请让我知道这是如何工作的。这是我到目前为止所拥有的:
在 XAML 中,我有:
<DatePicker Grid.Column="4" Grid.Row="9" Name="dueDateBox" VerticalAlignment="Center">
<DatePicker.SelectedDate>
<Binding Path="DueDate" UpdateSourceTrigger="PropertyChanged" Mode="TwoWay">
<Binding.ValidationRules>
<my:DateRangeRule/>
</Binding.ValidationRules>
</Binding>
</DatePicker.SelectedDate>
</DatePicker>
在 C# 中,我有:
public DateTime DueDate
{
get { return dueDate; }
set
{
if (DueDate != null) || !DueDate.Equals(value))
{
dueDate = value;
OnPropertyChanged("DueDate");
}
}
}
我也有一个依赖属性集,不确定这是否起作用:
public static readonly DependencyProperty DueDateProperty =
DependencyProperty.Register("DueDate", typeof(DateTime),
typeof(UpdateJobDialog), new PropertyMetadata(DateTime.Now));