Erlerntes googeln, kann aber nicht wirklich eine Antwort finden.Problem mit DateChanged-Ereignis auf MonthCalendar
Ein Windows-Formular mit einem MonthCalendar-Steuerelement und die Behandlung des DateChanged-Ereignisses. Das Problem hängt mit der Änderung des Monats per Mausklick zusammen.
Ich habe versucht, einen Zählerwert in einem Etikett angezeigt, die jedes Mal hoch gezählt wird, wenn der Event-Handler aufgerufen wird. Wenn der Monat geändert wird, wird der Event-Handler 2 Mal aufgerufen.
Wenn MessageBox.Show ("irgendetwas") bei der Ereignisbehandlung aufgerufen wird, scheint der Ereignishandler mehrmals abgerufen zu werden und der Kalender beginnt, sich für immer um einen Monat rückwärts zu ändern.
Weiß jemand warum?
folgender Code in dem Fenster Formularklasse Ergebnisse in dem beschriebenen Verhalten:
private void monthCalendar1_DateChanged(object sender, DateRangeEventArgs e)
{
int i = int.Parse(labelDateChanged.Text);
labelDateChanged.Text = (i + 1).ToString();
MessageBox.Show(i.ToString());
}
private void monthCalendar1_DateSelected(object sender, DateRangeEventArgs e)
{
int i = int.Parse(labelDateSelected.Text);
labelDateSelected.Text = (i + 1).ToString();
}
Ich habe Code von einem einfachen Formular hinzugefügt, das ich gemacht habe, um das Problem zu isolieren. Das Datum wird nicht geändert. – Mustafa