본문 바로가기

IT프로그래밍

C# 콤보 박스(Combo Box) DropDownStyle 3가지 비교 및 추천 사용법

콤보 박스란 하나의 박스 입력 박스가 있는 상태에서, 박스를 클릭하면 선택할 수 있는 목록이 길게 (보통 아래로)표출되는 컨트롤러를 말합니다.

사이트 회원 가입 시 직업, 관심사 등 선택할 때 흔히 볼 수 있습니다.

 

C# 콤보 박스에는 그 형태에 따라 3가지 종류의 DropDownStyle이 존재합니다.

 

1. DropDown

2. DropDownList

3. Simple

 

세가지 종류의 스타일의 차이점을 알아보고 어떤 종류의 콤보 박스가 많이 사용되는지 알아보겠습니다.

세 종류의 콤보박스에 모두 1, 2, 3, 4, 5의 값을 주고 폼을 실행시키고 비교해봤습니다.

 

3가지 DropDownStyle


1. DropDown

 - DropDown 방식의 콤보 박스 기본 화면

 

 - DropDown 방식의 콤보 박스 선택 되었을 때 화면

콤보 박스 생성 시 Default로 설정되어 있는 DropDown방식 입니다.

아래에서 설명할 DropDownList와 차이점을 미리 말씀드리자면

DropDown 방식에서는 선택된 아이템의 값 수정이 가능(Editable)합니다.

 

 


2. DropDownList

 - DropDownList 방식의 콤보 박스 기본 화면

 

 

 - DropDownList 방식의 콤보 박스가 선택되었을 때 화면

앞에서 미리 말씀드렸다시피

DropDownList 방식의 콤보 박스에서는 선택된 결과값을 수정 할 수 없습니다.

(타이핑을 칠 수 없습니다.)

콤보 박스의 DropDownStyle중 이 DropDownList 방식이 제일 많이 사용됩니다.

그 이유는, 콤보 박스는 사용자에게 객관식 보기를 제시하는 것과 같습니다. 하지만 수정이 가능하다면(Editable)굳이 콤보박스로 객관식 보기를 줄것이 아니라 차라리 텍스트 박스로 주관식을 적게 하는게 낫겠죠!?

따라서 대부분 콤보박스를 넣어야 하는 폼에는 DropDownList방식으로 콤보 박스 만듭니다.

DropDown 방식으로 콤보박스를 만든 후, 사용자의 입력을 막으려고 콤보박스의 enable 속성을 false로 할 경우  콤보 박스가 선택조차 되지 않습니다.

따라서 수정이 불가능한 콤보박스를 만들려면 DropDownList를 사용해야 합니다.

 

 

 


3. Simple

 - Simple 방식의 콤보 박스

다른 콤보 박스들과 상이한 모습(리스트 박스에 가까운?)을 보이며 선택할 수 있는 값들이 전체 펼쳐져 있습니다.

 

Simple방식의 콤보 박스 또한 선택된 값이 수정이 가능(Editable)합니다.

 

 

 

 


따라서 코딩한 콤보 박스의 선택지에서만 값을 선택하도록 하고 싶다면(값 수정이 불가능하게)

DropDownList 방식을 채용해야 합니다.

 

 

그럼 다음 포스팅에서 Combo박스의 초기화 방법과 선택된 값을 가져오는 방법에 대해 알아보겠습니다.