【发布时间】:2011-08-08 21:32:57
【问题描述】:
型号
public class SearchParametersModel : ViewModelBase
{
private string _fromDate;
public string FromDate
{
get { return _fromDate; }
set
{
_fromDate = value;
VerifyPropertyName("FromDate");
}
}
private string _toDate;
public string ToDate
{
get { return _toDate; }
set
{
_toDate = value;
VerifyPropertyName("ToDate");
}
}
private DateTime? _selectedFromdate;
public DateTime? SelectedFromDate
{
get { return _selectedFromdate; }
set
{
_selectedFromdate = value;
VerifyPropertyName("SelectedFromDate");
}
}
private DateTime? _selectedTodate;
public DateTime? SelectedToDate
{
get { return _selectedTodate; }
set
{
_selectedTodate = value;
VerifyPropertyName("SelectedToDate");
}
}
}
视图模型
private void Clear()
{
try
{
SearchParametersMdl.ToDate = string.Empty;
SearchParametersMdl.FromDate = string.Empty;
SearchParametersMdl.SelectedFromDate = null;
SearchParametersMdl.SelectedToDate = null;
}
catch (Exception ex)
{
throw ex;
}
}
查看
<DatePicker Height="25" HorizontalAlignment="Left" Margin="84,71,0,0"
Name="dtpFromDate" VerticalAlignment="Top" Width="115" Text="{Binding Path=
SearchParametersMdl.FromDate,Mode=TwoWay}" SelectedDate="{Binding
Path=SearchParametersMdl.SelectedFromDate,Mode=TwoWay}" />
<DatePicker Height="25" HorizontalAlignment="Right" Margin="0,70,481,0"
Name="dtpToDate" VerticalAlignment="Top" Width="115" Text="{Binding Path=
SearchParametersMdl.ToDate,Mode=TwoWay}" SelectedDate="{Binding
Path=SearchParametersMdl.SelectedToDate ,Mode=TwoWay}" />
无法清除日期选择器控件中的值。
我想在触发 clear cammand 后显示默认值(即选择一个日期)。
【问题讨论】:
-
清除时检查控制台输出。我猜你会收到一些关于无法转换绑定值的消息。
-
您的绑定是否正常工作?您需要确保在属性的设置器中引发 PropertyChanged 事件 - “VeryifyPropertyName”会这样做吗?
标签: mvvm mvvm-light