MonthCalendar/DateTimePicker 예제
이번에는 날짜를 넣어봅시다.
날짜에 관련된 컨트롤에는 2가지가 있습니다.
MonthCalendar와 DateTimePicker입니다.
MonthCalendar는 쉽게 말해 월별 달력이라고 생각하시면 됩니다.
그리고 DateTimePicker는 선택한 날짜만 보이는 겁니다.
위 그림처럼 추가를 했는데 위쪽이 DateTimePicker이고, 아래가 MonthCalendar입니다.
디스플레이 되는 것도 다르지만 가장 큰 차이는 DateTimePicker는 선택해서 보여줄 수 있는 날짜가
하루이지만, MonthCalendar는 최대 1주일을 선택할 수 가 있습니다.
MonthCalendar에 보시면 13일부터 19일까지 선택된 걸 볼 수 있습니다.
그리고 왼쪽 텍스트 창에 선택된 날짜를 디스플레이 되게 하였습니다.
만약 하루만 선택한다면 하루만 디스플레이 됩니다.
코드는 간단합니다.
1 2 3 4 5 6 7 | private void monthCalendar1_DateChanged(object sender, DateRangeEventArgs e) { if (monthCalendar1.SelectionRange.Start == monthCalendar1.SelectionRange.End) textBox1.Text = monthCalendar1.SelectionRange.Start.ToString("yyyy-MM-dd"); else textBox1.Text = monthCalendar1.SelectionRange.Start.ToString("yyyy-MM-dd") + "~" + monthCalendar1.SelectionRange.End.ToString("yyyy-MM-dd"); } | cs |
MonthCalendar는 위에서도 말했듯이 날짜 범위를 선택할 수 있으므로 선택된 날짜를 가져올 때
'SelectionRange'라는 method로 가져옵니다. 'Start'는 시작 날짜, 'End'는 끝 날짜 입니다.
'DateTime'과 마찬가지로 ToString뒤에 형식을 적어주면 형식대로 가져오게 됩니다.
그렇다면 DateTimePicker는 어떨까요?
DateTimePicker는 오른쪽의 버튼을 누르시면 풀다운으로 캘린더가 나타납니다.
날짜를 선택하시면 마찬가지로 왼쪽 텍스트 창에 디스플레이 됩니다.
앞서 말했듯이 DateTimePicker는 선택할 수 있는 날짜가 하루뿐입니다.
코드는 더 간단합니다.
1 2 3 4 | private void dateTimePicker1_ValueChanged(object sender, EventArgs e) { textBox1.Text = dateTimePicker1.Value.ToString("yyyy-MM-dd"); } | cs |
범위가 아닌 하루밖에 선택이 안되기 때문에 'Value'라는 method를 쓰시면 됩니다.
MonthCalendar와 DateTimePicker 둘 다 선택한 날짜를 가져오는 역할을 하지만, 쓰임새는 다릅니다.
하루이상의 날짜가 필요할 땐 MonthCalendar를 하루만 필요할 땐 DateTimePicker를 쓰시면 됩니다.
'Study > C#(Window programming)' 카테고리의 다른 글
text 창 text 다양한 color 나오게 하기 (0) | 2020.08.15 |
---|---|
DB연동하기(MySQL에 기록 저장하기) (0) | 2015.09.02 |
C# 시계만들기 (0) | 2015.07.24 |
C# Tip (디버깅중 코드 수정하기) (0) | 2015.07.24 |
C#기초(리스트 뷰) (0) | 2015.07.23 |