VB.NET 2008/VB - 컨트롤

컨트롤 - MonthCalendar 컨트롤

본클라쓰 2011. 4. 25. 09:56

 

MonthCalender 컨트롤은 날짜 정보를 보고 설정할 수 있는 직관적인 그래픽 인터페이스를 제공한다.

 

 

이 컨틀롤은 날짜가 요일별로 나열된 표 형태의 달력을 표시하며 선택된 범위의 날짜는 강조 표시된다. 월 캡션 양쪽에 있는 화살표 단추를 클릭하여 다른 월을 선택할 수 있다.

 

DateTimePicker 컨트롤과 달리 이 컨트롤에서는 날짜를 두 개 이상 선택할 수 있다.

 

MonthCalender 컨트롤의 모양을 매우 다양하게 구성할 수 있다. 기본적으로 오늘 날짜에는 원이 표시되고 표 아래쪽에도 오늘 날짜가 별도로 표기된다. ShowToday ShowTodayCircle 속성을 false로 설정하여 이 기능을 변경할 수 있다.

 

ShowWeekNumbers 속성을 true로 설정하면 달력에 주 번호를 추가할 수 있다. CalendarDimensions 속성을 설정하면 가로나 세로 방향으로 여러 달을 표시할 수 있다. 기본적으로 일요일이 첫 번재 요일로 표시되지만 FirstDayOfWeek 속성을 사용하여 다른 요일을 지정할 수 있다.

 

BoldedDates, AnnuallyBoldedDates MonthlyBoldedDates 속성에 DateTime 개체를 추가하면 특정 날짜를 한 번만, 매년 또는 매월 굵게 표시할 수 있다. 세 가지 속성을 사용하여 이 기능을 제어할 수 있다.

 

BoldedDates 속성에는 단일 날짜가 포함되고 AnnuallyBoldedDates 속성에는 매년 굵게 표시되는 날짜가 포함된다. 또한 MonthlyBoldedDates 속성에는 매월 굵게 표시되는 날짜가 포함된다. 각 속성에는 DateTime 개체 배열이 포함된다. 이러한 목록에서 날짜를 추가 또는 제거하려면 DateTime 개체를 추가하거나 제거해야 한다.

 

Dim myVacation1 As Date = New DateTime(2001, 6, 10)
Dim myVacation2 As Date = New DateTime(2001, 6, 17)

생성된 DateTime 개체를 AddBoldedDate, AddAnnuallyBoldedDate 또는 AddMonthlyBoldedDate 메서드를 호출하여 단일 날짜를 굵게 표시한다.

 

MonthCalendar1.AddBoldedDate(myVacation1)
MonthCalendar1.AddBoldedDate(myVacation2)

제거를 할 때는 RemoveBoldedDate, RemoveAnnuallyBoldedDate 또는 RemoveMonthlyBoldedDate 메서드를 호출하여 굵게 표시된 단일 날짜를 보통 글꼴로 표시한다.

 

MonthCalendar1.RemoveBoldedDate(myVacation1)
MonthCalendar1.RemoveBoldedDate(myVacation2)

 

 

MonthCalendar 컨트롤의 주요 속성은 컨트롤에서 날짜 범위를 선택할 수 있는 SelectionRange 이다. SelctionRange 값은 MaxSelectionCount 속성에 설정된 선택 기능 날짜의 최대 수를 초과할 수 없다. 사용자가 선택할 수 있는 처음 날짜와 마지막 날짜는 MaxDate 및 MinDate 속성으로 결정된다.

 

 

MonthCalendar 컨트롤의 달력의 색 구성표를 변경하려면 TitleBackColor, TitleForeColor TrailingForeColor 같은 속성을 설정한다. 또한 TitleBackColor 속성은 요일의 글꼴 색을 결정하고 TrailingForeColor 속성은 표시된 월의 이전 및 이후 월의 날짜 색을 결정한다.

 

컨트롤 아래쪽에 현재 날짜를 표시하려면 ShowToday 속성을 True로 설정한다.

 

주 번호를 표시하려면 ShowWeekNumbers 속성을 true로 설정한다.

 

 

MonthCalendar 컨트롤에는 최대 12개의 월을 한 번에 표시할 수 있다. 기본적으로 이 컨트롤에는 한 달만 표시되지만 표시되는 월 수와 컨트롤에서 월이 정렬되는 방식을 지정할 수 있다. 달력 크기를 변경하면 컨트롤 크기가 조정되므로 변경된 크기에 맞는 충분한 공간이 폼에 있어야 한다.

 

여러 월을 표시하려면 CalendarDimensions 속성에 가로 또는 세로로 표시할 월 수를 설정한다.

 

MonthCalendar1.CalendarDimensions = New System.Drawing.Size (3,2)

 

MonthCalendar 컨트롤의 중요한 기능 중에는 사용자가 날짜 범위를 선택할 수 있는 기능이 있다. 이 기능은 사용자가 단일 날짜/시간 값을 선택할 수 있는 DateTimePicker 컨트롤의 날짜 선택 기능을 향상시킨 것이다. MonthCalendar 컨트롤의 속성을 사용하면 사용자가 설정한 선택 범위를 가져오거나 날짜 범위를 설정할 수 있다.

 

 

선택된 날짜 데이터를 문자형으로 '1999-09-09' 형태로 가져올 때는 MonthCalendar.SelectionStart.ToShortDateString 을 사용한다.

'VB.NET 2008 > VB - 컨트롤' 카테고리의 다른 글

컨트롤 - GroupBox 컨트롤  (0) 2011.04.25
컨트롤 - DateTimePicker 컨트롤  (0) 2011.04.25
컨트롤 - ListBox 컨트롤  (0) 2011.04.25
컨트롤 - ComboBox 컨트롤  (0) 2011.04.25
컨트롤 - CheckedListBox 컨트롤  (0) 2011.04.25