DateTimePicker는 날짜를 표시, 선택할 수 있게 만들어진 클래스다.
[그림 1]
[그림 2]
날짜와 시간을 표시하는 방식은 4가지로 나눌 수 있는데
Long , Short , Time , Custom 이 그것이다.
Long
1 | this.dateTimePicker1.Format = DateTimePickerFormat.Long; | cs |
[코드 1]
[코드 1]처럼 DateTimePicker의 Format 속성을 Long으로 설정해주면
[그림 3]
[그림 3]과 같이 년, 월, 일, 요일이 모두 표시된다.
Short
1 | this.dateTimePicker1.Format = DateTimePickerFormat.Short; | cs |
[코드 2]
마찬가지로 [코드 2]처럼 Format 속성을 Short로 설정해주면
[그림 4]
[그림 4]와 같이 년, 월, 일이 간단하게 표시된다.
Time
1 | this.dateTimePicker1.Format = DateTimePickerFormat.Time; | cs |
[코드 3]
Time은 단어에서 알 수 있듯 시간을 표시할 때 사용한다.
[그림 5]
Custom
1 2 3 | this.dateTimePicker1.Format = DateTimePickerFormat.Custom; //형식 지정 this.dateTimePicker1.CustomFormat = "yy년 MM월 dd일(ddd)"; | cs |
[코드 4]
Custom또한 이름에서 알 수 있듯이 표시될 형식을 직접 커스텀 할 때 사용한다.
[코드 4]와 같이Format 속성을 Custom으로 설정한 뒤 CustomFormat 속성을 따로 지정해 준다.
[그림 6]
[코드 4]에 CustomFormat 속성에 지정된 yy년 mm월 dd일(요일) 형식으로 [그림 6]에 표시된것을 볼 수 있다.
ddd는 요일을 가리키며 년도를 4자리로 표현하려면 "yyyy년"으로 쓰면 된다.
날짜 데이터를 원하는 형식으로 불러와 출력하려 할 경우
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 | private void button1_Click(object sender, EventArgs e) { string strMsg = String.Empty; switch (Flag) { case 1 : strMsg = String.Format( "배송 예정일은 {0}입니다.", this.dateTimePicker1.Value.ToLongDateString()); break; case 2 : strMsg = String.Format( "배송 예정일은 {0}입니다.", this.dateTimePicker1.Value.ToShortDateString()); break; case 3 : strMsg = String.Format( "배송 예정일은 {0}입니다.", this.dateTimePicker1.Value.ToLongTimeString()); break; case 4 : strMsg = String.Format( "배송 예정일은 {0}년 {1}월 {2}일({3})입니다.", this.dateTimePicker1.Value.Year, this.dateTimePicker1.Value.Month, this.dateTimePicker1.Value.Day, this.dateTimePicker1.Value.DayOfWeek); break; } MessageBox.Show(strMsg, "배송 예정일", MessageBoxButtons.OK, MessageBoxIcon.Information); } | cs |
[코드 5]
[코드 5]와 같이 String으로 불러와 사용할 수 있다. 하지만 표시되는 Format 속성이 바뀌어도 Value 값에 영향을 주는건 아니기에 값을 불러올때의 형식을 따로 지정해줘야 한다.
Format 속성의 Long과 같은 형식으로 가져오려면 ToLongDateString()
Short와 같은 형식으로 가져오려면 ToShortDateString()
Time과 같은 형식으로 가져오려면 ToLongTimeString()으로 설정하면 되지만
Custom의 경우 맞는 형식이 따로 존재하지 않기에 [코드 5]와 같이 직접 설정해줘야 할 듯 싶다.
'IT > 윈도우 폼' 카테고리의 다른 글
[VS 2013] 라디오버튼과 체크박스 폼 (0) | 2018.05.18 |
---|---|
[VS 2013] Timer를 이용한 실시간 시간 출력 (0) | 2018.05.17 |
[VS 2013] 모달과 모달리스 (0) | 2018.01.30 |
[VS 2013] 그룹박스 내의 컨트롤 접근 (0) | 2017.08.02 |
[VS 2013] 폼에서 폼으로 창 바꾸기 (0) | 2017.07.28 |