У меня есть средство выбора даты в C #. Когда я нажимаю на него, он расширяется, чтобы показать календарь на месяц, когда я нажимаю стрелку влево, чтобы вернуться на месяц, он меняет значение и вызывает мое событие. Событие включает в себя слишком много кода для включения в него, но при этом вызывает несколько ненужных функций.
Проблема, с которой я столкнулся, заключается в том, что, когда я нажимаю на стрелку влево, она застревает в каком-то цикле и продолжает снижаться в течение месяцев, и я не могу это остановить. Одна из вызываемых функций содержит Application.DoEvents (), и, если я это прокомментирую, она не застревает в цикле, но мне нужна эта команда, чтобы обновить другой раздел интерфейса. Есть идеи, почему это происходит?
Иногда я могу дублировать его с помощью этого кода, иногда он просто делает это пару раз, иногда он застревает в цикле.
private void DateTimePickerValueChangedEvent(object sender, EventArgs e)
{
afunction();
}
private void afunction()
{
listView1.Clear();
panel1.Visible = true;
Application.DoEvents();
}