Эй,
В моем приложении есть стандартный WinForms MonthCalendar с обработчиком, подключенным к событию DateChanged. Всякий раз, когда я меняю дату по дням, нажимая на определенную дату в маленьком календаре, событие срабатывает один раз. Однако всякий раз, когда я меняю дату по месяцам, нажимая ‹ и > в элементе управления, событие срабатывает дважды. Я хочу, чтобы событие запускалось один раз во всех ситуациях.
Любые идеи?
РЕДАКТИРОВАТЬ: я отладил и обнаружил, что SelectedItem или Range одинаковы при первом и втором вызове обработчика. Поэтому мне нужен способ различать первый и второй вызов, но при этом обеспечивать правильную обработку, когда событие срабатывает только один раз.
Был запрошен код обработчика, вот он, но он не имеет ничего общего с многократным срабатыванием события:
List<TimestampInfo> displayTimestamps = databaseManger.QueryForTimestamps(DayPicker.SelectionRange);
if (displayTimestamps == null) return;
TimestampsListBox.Items.Clear();
TimestampsListBox.Items.AddRange(displayTimestamps.ToArray());