Dave81 올바른 트랙을 설정하십시오. 그가 말한대로하면 사용자가 직접 값을 변경하면 CloseUp 이벤트가 발생하지 않는다는 것이 문제입니다. 월별 변경 이벤트를 계속 다시 발생시키는 방법으로이 문제를 해결 한 방법은 달력을 삭제하지 않은 경우에만 ValueChanged 이벤트를 새로 고치는 것입니다. 예 :
private bool _calendarDroppedDown = false;
//called when calendar drops down
private void dateStartDateTimePicker_DropDown(object sender, EventArgs e)
{
_calendarDroppedDown = true;
}
//called when calendar closes
private void dateStartDateTimePicker_CloseUp(object sender, EventArgs e)
{
_calendarDroppedDown = false;
RefreshToolbox(null, null); //NOW we want to refresh display
}
//This method is called when ValueChanged is fired
public void RefreshToolbox(object sender, EventArgs e)
{
if(_calendarDroppedDown) //only refresh the display once user has chosen a date from the calendar, not while they're paging through the days.
return;
...
}
'dateTimePicker1_ValueChanged' 내에 코드를 표시하십시오. –
dateTimePicker1_ValueChanged() – thumbmunkeys
에서 날짜 값을 변경하는 경우 (dtpStart.Value> dtpEnd.Value) {MessageBox.Show ("휴가 날짜 이전에 휴가 종료일이 발생할 수 없습니다", "잘못된 항목", MessageBoxButtons.OK); dtpStart.Value = dtpEnd.Value; } –