由于某种原因,此事件会触发两次。例如,我在按钮单击上遇到的其他事件仅触发一次,但是由于某种原因,日期选择器上的日期更改连续触发两次。
有任何想法吗?
码
public event EventHandler<CalendarEventArgs> DateTimeStartChanged;
private void dateTimeStart_SelectedDateChanged(object sender, SelectionChangedEventArgs e)
{
if (!_loading)
{
e.Handled = true;
if (DateTimeStartChanged != null)
if (dateTimeStart.SelectedDate != null && dateTimeEnd.SelectedDate != null)
{
StartDate = (DateTime) dateTimeStart.SelectedDate;
DateTimeStartChanged(this,
new CalendarEventArgs((DateTime) dateTimeStart.SelectedDate,
(DateTime) dateTimeEnd.SelectedDate));
}
}
}
最佳答案
多么令人沮丧的问题。我针对此问题的解决方法如下。到目前为止已经工作了。希望这对某人有帮助。
private DateTime? currentDateTime = null;
private void dpDate_SelectedDateChanged(object sender, SelectionChangedEventArgs e)
{
if(currentDateTime != dpDate.SelectedDate)
SaveData();
currentDateTime = dpDate.SelectedDate;
}