У меня есть DatePicker, чье SelectedDate
связано со свойством CLR с двусторонней привязкой в ViewModel с именем VMStartDate
.Когда пользовательский интерфейс открывается, по умолчанию в окне выбора даты отображается сегодняшняя дата.
View.xaml
<DatePicker Width="160" Height="35"
SelectedDate="{Binding Path=VMStartDate,Mode=TwoWay,
TargetNullValue={x:Static sys:DateTime.Now}}">
<DatePicker.Resources>
<Style TargetType="{x:Type DatePickerTextBox}">
<Setter Property="Control.Template">
<Setter.Value>
<ControlTemplate>
<TextBox x:Name="PART_TextBox" Height="28" BorderBrush="Transparent"
VerticalContentAlignment="Center" VerticalAlignment="Center"
BorderThickness="0" FontSize="14"
Text="{Binding Path=SelectedDate, StringFormat='dd/MM/yyyy',
RelativeSource={RelativeSource AncestorType={x:Type DatePicker}}}"
Validation.ErrorTemplate="{x:Null}" />
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
</DatePicker.Resources>
</DatePicker>
ViewModel.cs
private DateTime _VMStartDate;
public DateTime VMStartDate
{
get { return _VMStartDate; }
set { SetProperty(ref _VMStartDate, value); }
}
Я хочу, чтобы DatePicker
отображал пустую строку, пока пользователь не выберет дату или не удалит ее.