2012-10-16 5 views

답변

3

컨트롤의 MinDate 및 MaxDate 속성을 설정하고 프로그래밍 방식으로 MinDate를이 달의 1 일로 설정하고 MaxDate를 이번 달의 마지막 날로 설정하여 해제 할 수 있습니다.

+0

나는 이것이 가능할 수도 있다는 것을 결코 알지 못했습니다. 고마워 @Wanabrutbeer 다시 한번 :) –

+0

+1 작동하지만 조금 unintuitive입니다. 화살표를 클릭해도 Mopnth 이름을 계속 클릭 할 수 있으며 한 달을 클릭하면 다시 한 달을 볼 수 있습니다. 화살표를 포함하는 달 이름과 월을 포함하는 레이블 컨트롤을 갖는 것이 더 나을 것입니다. –

+0

대단히 감사합니다. 유용합니다. – PenguinSh

0
monthCalendar1.MinDate = new DateTime(2012,10,1); 
monthCalendar1.MaxDate = new DateTime(2012, 10, 31); 

화살표를 비활성화하려면 MonthCalendar를 설정하는 것이 약간 비현실적입니다.

화살표를 클릭해도 여전히 월 이름을 클릭 할 수 있으며 한 달을 다시 클릭하면 한 달을 볼 수 있습니다.

화살표 컨트롤과 월을 포함하는 레이블 컨트롤을 사용하는 것이 좋습니다.

0

시간, 분 및 초를 추가하는 것을 잊지 마세요. 특히 MaxDate에서 예외를 피할 때 유용합니다.

DateTime firstDayInMonth = new DateTime(today.Year, today.Month, 1, 0, 0, 0); 
DateTime lastDayInMonth = new DateTime(today.Year, today.Month, DateTime.DaysInMonth(today.Year, today.Month), 23, 59, 59); 

yourCalendar.MinDate = firstDayInMonth; 
yourCalendar.MaxDate = lastDayInMonth;