由于某种原因,此事件会触发两次。例如,我在按钮点击上的其他事件只触发一次,但日期选择器上的日期更改因任何原因连续触发两次。
有任何想法吗?
代码
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;
}
关于WPF 用户控件事件触发两次,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5001220/