C#, WPF에서 많이 사용하는 ComboBox(콤보박스)의 사용법에 대하여 알아보도록 하겠습니다. 콤보박스를 사용하는 방법으로는 콤보박스 생성, 콤보박스 아이템 삽입, 마지막으로 콤보박스에서 선택된 아이템(Item) 값을 가져오기입니다.
C#/WPF ComboBox(콤보박스) 사용법
▶ ComboBox란?
- ComboBox는 나열된 Item들 중에서 하나를 선택하여 사용할 수 있도록 해주는 Control입니다. 여러 가지 항목 중에서 하나를 선택하여 사용해야 하는 경우 많이 사용됩니다.
- 실제 많이 사용되고 있는 예로는 글자 폰트를 선택할 때도 사용될 수 있으며, 구글 정렬 방식에서도 콤보박스가 사용되며, 네이버나 구글 등 검색창 입력 시 나오는 관련 키워드 역시 콤보박스 개념으로 볼 수 있습니다.
1. ComboBox 생성 및 Items 추가
xaml 코드에서 ComboBox를 추가합니다. 위 사진을 보시면 <ComboBox> 태그 안에 <ComboBoxItem>이 나열된 것을 보실 수 있습니다. 나열된 Item이 ComboBox를 클릭하였을 때 선택할 수 있는 Item입니다.
ComboBox 태그 안에는 여러 가지 속성들이 나열되어 있는데, 중요한 부분은 콤보박스를 선택하였을 때 반응하는 SelectionChanged 이벤트를 추가하였습니다.
간단하게 Margin은 여백을 설정하는 것이며, Alignment는 각 수직/수평의 정렬을 위하여 설정하였습니다. 속성값으로 Stretch를 사용한 이유는 해당 수평과 수직을 상위 컨트롤에 맞게 맞추기 위함입니다.
2. ComboBox Item 초기값 설정
프로그램을 실행하였을 때, ComboBox의 초기값을 설정하여 가장 먼저 표시되는 Item을 지정할 수 있습니다. 위 사진에서 적용된 초기값 1번은 ComboBox에 아무것도 표시되지 않는 것을 의미합니다. 2번을 하실 경우에는 가장 먼저 등록된 값 '서울'이 초기값으로 설정되고, 3번의 경우 마지막으로 등록된 '부산'이 초기값으로 설정됩니다. 상황에 맞는 초기값으로 설정하실 수 있습니다.
참고로 1번(SelectedIndex = -1)을 제외한 다른 설정을 하실 경우 콤보박스의 Item이 변경된 것으로 인식되어 SelectionChanged Event가 발생합니다. 이점 유의하시기 바랍니다.
3. ComboBox 선택된 Item의 Value 가져오기
1) SelectionChanged 이벤트
마지막으로 ComboBox의 생성 및 Item 설정이 다 된 이후 ComboBox의 값을 선택할 때 발생하는 이벤트입니다. 이 이벤트는 현재 설정된 값이 다른 값으로 바뀔 때만 발생합니다.
위 코드는 ComboBox의 값이 변경될 때, 변경된 값을 가져와서 TextBlock에 입력하는 기능입니다. Sender를 통하여 현재 이벤트가 발생한 ComboBox를 정의한 후 선택된 Item의 Content 문자열을 가져오는 방식으로 선택 시 아래 사진과 같이 변경됩니다.
이번 시간에는 C#/WPF에서 ComboBox를 사용하는 방법에 대하여 알아보았습니다. 실제로 많이 사용되는 Control로 위 사용법 외에도 여러 가지 이벤트 및 Binding을 통하여 더욱 편리하게 사용하실 수 있습니다.
추가적인 내용을 더욱 보강할 예정입니다. 꾸준히 업데이트하겠습니다.
C# 관련 포스팅 정보
'C# > WPF' 카테고리의 다른 글
[C#/WPF] 문자열이 숫자인지 판단(Regex.IsMatch, Int32.TryParse) (0) | 2023.11.13 |
---|---|
[C#/WPF] Window(윈도우) 현재창 닫기(Close) (0) | 2023.08.17 |
[C#/WPF] Split 문자열 나누기 (0) | 2023.07.03 |
[C#/WPF] 모달/모달리스 다이얼로그 창 열기 (0) | 2023.02.07 |
[C#/WPF] 프로그램 메인창 닫기 (종료) (0) | 2023.01.18 |
댓글