私のView.xamlには、ViewModel の Date プロパティにバインドされた DatePicker があります。
<DatePicker SelectedDate="{Binding Path=Date, Mode=TwoWay, Converter={StaticResource IfNullDateConverter}}" />
View.xaml が表示されている場合、「IfNullConverter」を使用してデフォルトの DateTime 値「01.01.0001」を DateTime.Now に変換するため、DatePicker は現在の日付を表示します。しかし、実際には SelectedDate プロパティは設定されていません。なんで?
[保存] ボタンを押しても、ViewModel に渡される DatePicker の値は "01.01.0001" のままです。
助けてください、私は何が間違っていますか? 日付が「01.01.0001」の場合、現在の日付を渡すようにソース コードを更新するにはどうすればよいですか?
IfNullDateConverter
DateTime dateValue = (DateTime)value;
if (dateValue.ToShortDateString() == "01.01.0001")
{
return DateTime.Now;
}
else
{
return value;
}