Вам нужно будет самостоятельно отслеживать события нажатия.Вам необходимо использовать событие DateSelected для отметки при нажатии на дату, а событие DateChanged для «сброса» промежутка времени, чтобы вы не учитывали щелчок по различным датам как двойной щелчок.
Примечание: если вы используете событие нажатия мыши, вы получите ошибочное поведение
Событие отключения мыши происходит независимо от того, на что вы нажали, например, нажатие на заголовок месяца / года и т. д. будет зарегистрировано простотак же, как нажатие на реальную дату.Отсюда использование DateSelected вместо события нажатия мыши.
private DateTime last_mouse_down = DateTime.Now;
private void monthCalendar_main_DateSelected(object sender, DateRangeEventArgs e)
{
if ((DateTime.Now - last_mouse_down).TotalMilliseconds <= SystemInformation.DoubleClickTime)
{
// respond to double click
}
last_mouse_down = DateTime.Now;
}
private void monthCalendar_main_DateChanged(object sender, DateRangeEventArgs e)
{
last_mouse_down = DateTime.Now.Subtract(new TimeSpan(1, 0, 0));
}