VB.Net 콤보Box 예제로 제어

⚡ 스마트 요약

콤보Box VB.Net에서는 Windows 텍스트 상자와 드롭다운 목록을 결합한 폼 컨트롤로, 사용자가 항목을 하나 선택하거나 직접 입력할 수 있어 폼 공간을 절약할 수 있습니다.

  • 🎯 목적 : 사용자가 값을 선택하거나 입력할 수 있는 드롭다운 목록을 표시합니다.
  • 항목 추가: 콤보박스는 속성 창에서 채우거나 런타임에 Items.Add를 사용하여 채울 수 있습니다.
  • 🔍 읽기 선택 항목: SelectedItem, SelectedIndex 및 Text는 사용자가 선택한 값을 반환합니다.
  • 🗄️ 바인딩 데이터: 데이터 세트에서 행을 로드하도록 DataSource, DisplayMember 및 ValueMember를 설정합니다.
  • 🔔 변경 사항 감지: SelectedIndexChanged 이벤트는 선택된 항목이 변경될 때마다 발생합니다.
  • 🤖 AI 도움말: GitHub Copilot 및 Visual Studio IntelliCode 콤보를 쓰세요Box 입력하는 동안 핸들러가 실행됩니다.

VB.Net 콤보Box Control:

콤보박스 컨트롤이란?

콤보박스 컨트롤은 여러 항목이 있는 드롭다운 목록을 표시하는 데 도움이 됩니다. 사용자가 텍스트를 입력하는 텍스트 상자와 사용자가 항목을 선택하는 드롭다운 목록의 조합으로 볼 수 있습니다. 콤보박스는 한 번에 하나의 항목을 표시합니다.

콤보박스 만들기

콤보Box 다음과 같이 생성될 수 있습니다:

1단계) 새 애플리케이션을 생성합니다.

2단계) 도구 상자에서 콤보박스 컨트롤을 폼으로 드래그합니다.

VB.Net 콤보박스 컨트롤이 툴박스에서 드롭되었습니다. Windows 형태

콤보상자 컨트롤이 생성되었습니다.

콤보박스에 아이템 추가하기

이제 콤보상자를 만들었으니, 콤보상자에 항목을 추가하는 방법을 알아보겠습니다.

Double 추가한 콤보박스 컨트롤을 클릭하세요. 디자인 탭에서 코드가 있는 탭으로 이동됩니다.

콤보박스 컨트롤에 항목을 추가하려면 Items 속성을 사용합니다. 콤보박스에 Male과 Female이라는 두 개의 항목을 추가하여 이를 보여드리겠습니다.

ComboBox1.Items.Add("Male")
ComboBox1.Items.Add("Female")

또한 속성 창에서 디자인 타임에 콤보박스에 항목을 추가하도록 선택할 수도 있습니다. 단계는 다음과 같습니다.

1단계) 디자인 탭을 열고 콤보박스 컨트롤을 클릭합니다.

2단계) 속성 창으로 이동하여 항목 옵션을 확인합니다.

3단계) ​​(컬렉션) 오른쪽에 있는 …을 클릭합니다.

VB.Net 코드에서 Items.Add 메서드를 사용하여 콤보박스에 항목을 추가하는 방법

VB.Net 속성 창에서 콤보박스 항목 컬렉션 편집기가 열립니다.

4단계) 새 창이 나타납니다. 아래 그림과 같이 이 창에서 콤보박스에 항목을 추가하세요.

문자열 컬렉션 편집기에서 남성 및 여성 콤보박스 항목을 나열합니다.

5단계) ty 작업이 완료되면ping 항목을 선택한 후 확인 버튼을 클릭하세요.

6단계) 상단 도구 모음에서 시작 버튼을 클릭하고 콤보 상자의 드롭다운 아이콘을 클릭합니다.

VB.Net 콤보박스에서 런타임 시 '남성'이 기본 항목으로 선택된 것을 보여줍니다.

항목이 콤보상자 컨트롤에 성공적으로 추가되었습니다.

콤보박스 항목 선택

폼이 로드될 때 선택될 기본 항목을 설정해야 할 수도 있습니다. SelectedItem() 메서드를 통해 이를 달성할 수 있습니다. 예를 들어, 기본 선택 성별을 남성으로 설정하려면 다음 명령문을 사용할 수 있습니다.

ComboBox1.SelectedItem = "Male"

코드를 실행하면 콤보박스 컨트롤은 아래와 같이 표시됩니다.

VB.Net 폼에서 남성과 여성 옵션을 선택할 수 있는 콤보박스를 표시합니다.

콤보박스 값 검색

콤보박스에서 선택된 항목을 가져올 수 있습니다. 텍스트 속성을 사용하면 됩니다. 위의 콤보박스에 '남성'과 '여성' 두 항목이 있는 경우를 예로 들어 설명하겠습니다. 아래 단계를 따르세요.

단계 1) Double 콤보박스를 클릭하면 VB.Net 코드가 있는 탭이 열립니다.

2단계) 다음 코드를 추가하세요.

Public Class Form1
    Private Sub ComboBox1_SelectedIndexChanged(sd As Object, evnt As EventArgs) Handles ComboBox1.SelectedIndexChanged

        Dim var_gender As String

        var_gender = ComboBox1.Text

        MessageBox.Show(var_gender)
		
    End Sub
End Class

3단계) ​​도구 모음에서 시작 버튼을 클릭하여 코드를 실행합니다. 다음과 같은 화면이 나타날 것입니다.

Code VB.Net 콤보박스의 SelectedIndexChanged 이벤트 핸들러 스크린샷

4단계) 드롭다운 버튼을 클릭하고 성별을 선택하세요. 제 경우에는 남성을 선택했고 다음과 같은 화면이 나타났습니다.

VB.Net 메시지 상자에 선택된 콤보박스 항목 텍스트("남성")가 표시됩니다.

다음은 코드의 스크린샷입니다.

설명 Code:

  1. Form1이라는 클래스를 만듭니다. 클래스의 액세스 한정자가 Public으로 설정되었으므로 클래스에 공개적으로 액세스할 수 있습니다.
  2. Combo라는 이름의 하위 프로시저를 시작합니다.Box1_SelectedIndexChanged. 이 이벤트는 디자인 탭에서 콤보박스 컨트롤을 두 번 클릭하면 자동으로 생성됩니다. 이 하위 프로시저는 콤보박스에서 항목을 선택할 때 호출됩니다. sd As Object는 이벤트를 발생시킨 개체를 참조하고, evnt As EventArgs는 이벤트 데이터를 저장합니다.
  3. var_gender라는 이름의 문자열 변수를 생성합니다.
  4. 콤보상자에서 선택된 항목으로 var_gender 변수의 값을 설정합니다.
  5. 메시지에 변수 var_gender의 값을 출력합니다.Box.
  6. 콤보의 끝Box1_SelectedIndexChanged 하위 프로시저.
  7. Form1 클래스가 종료되었습니다.

콤보박스 항목 제거

콤보박스에서 항목을 제거할 수 있습니다. 이를 달성하는 방법은 두 가지가 있습니다. 항목 인덱스나 항목 이름을 사용할 수 있습니다.

항목 인덱스를 사용할 때 아래와 같이 Items.RemoveAt() 속성을 사용해야 합니다.

ComboBox1.Items.RemoveAt(1)

위의 예에서 우리는 콤보박스의 인덱스 1에 있는 항목을 제거하고 있습니다. 콤보박스 인덱스는 인덱스 0에서 시작한다는 점에 유의하세요. 즉, 위의 명령은 콤보박스의 두 번째 항목을 제거합니다.

해당 이름을 사용하여 항목을 제거하려면 아래와 같이 Items.Remove() 속성을 사용해야 합니다.

ComboBox1.Items.Remove("Female")

위 코드는 콤보에서 Female이라는 항목을 제거해야 합니다.Box1.

데이터 소스 바인딩

콤보Box 데이터 세트에서 채울 수 있습니다. 아래에 제공된 SQL 쿼리를 고려하십시오.

select emp_id, emp_name from employees; 

프로그램에서 데이터 소스를 생성한 후 다음 코드를 사용하여 데이터 소스를 바인딩할 수 있습니다.

comboBox1.DataSource = ds.Tables(0)
comboBox1.ValueMember = "emp_id"
comboBox1.DisplayMember = "emp_name"

이렇게 하면 각 항목을 개별적으로 입력하지 않고도 콤보상자 컨트롤에 데이터를 쉽게 채울 수 있습니다.

SelectedIndexChanged 이벤트

사용자가 새로운 값을 선택하는 순간 프로그램이 즉시 반응하도록 하고 싶은 경우가 많습니다.

이 유형의 이벤트는 콤보박스에서 선택한 항목을 변경할 때 호출됩니다. 콤보박스의 선택한 항목에서 변경 시 작업을 구현해야 할 때 사용해야 하는 이벤트입니다. 예를 들어 이를 보여드리겠습니다.

1단계) 새로 만들기 Windows 양식 신청서.

2단계) 그 다음에는 콤보박스 컨트롤 두 개를 폼으로 드래그 앤 드롭해야 합니다.

VB.Net 화면에 나란히 배치된 두 개의 콤보박스 컨트롤 Windows 형태

단계 3) Double 양식 내부를 클릭하여 코드 탭을 엽니다. 다음 코드를 입력하세요.

Public Class Form1
    Private Sub Form1_Load(sd As Object, evnt As EventArgs) Handles MyBase.Load

        ComboBox1.Items.Add("Males")

        ComboBox1.Items.Add("Females")

    End Sub

    Private Sub ComboBox1_SelectedIndexChanged(sender As Object, e As EventArgs) Handles ComboBox1.SelectedIndexChanged

        ComboBox2.Items.Clear()

        If ComboBox1.SelectedItem = "Males" Then

            ComboBox2.Items.Add("Nicholas")

            ComboBox2.Items.Add("John")

        ElseIf ComboBox1.SelectedItem = "Females" Then

            ComboBox2.Items.Add("Alice")

            ComboBox2.Items.Add("Grace")

        End If
    End Sub
End Class

4단계) 상단 메뉴에서 시작 버튼을 클릭하여 코드를 실행합니다. 다음과 같은 출력이 표시될 것입니다.

폼 로드 시 첫 번째 콤보박스에 남성과 여성 항목이 채워집니다.

5단계) 첫 번째 콤보박스의 드롭다운 버튼을 클릭하고 '남성'을 선택합니다. 마우스 커서를 두 번째 콤보박스로 이동하고 해당 드롭다운 버튼을 클릭합니다. 사용 가능한 항목을 확인하세요.

남성을 선택한 후 니콜라스와 존을 보여주는 두 번째 콤보박스

6단계) 첫 번째 콤보박스로 이동하여 선택합니다. 여성두 번째 콤보박스로 이동하여 사용 가능한 항목을 확인하세요.

여성을 선택한 후 앨리스와 그레이스를 보여주는 두 번째 콤보박스

다음은 코드의 스크린샷입니다.

Code VB.Net의 두 콤보박스에 대한 SelectedIndexChanged 핸들러의 스크린샷

설명 Code:

  1. Form1이라는 클래스를 만듭니다.
  2. Form1_Load()라는 하위 프로시저의 시작 부분입니다. 이 프로시저는 폼이 로드되면 실행됩니다. `sd As Object`는 이벤트를 발생시킨 개체를 참조하고, `evnt As EventArgs`는 이벤트 데이터를 저장합니다.
  3. 콤보에 남성 항목 추가Box1.
  4. 콤보에 여성 아이템 추가Box1.
  5. Form1_Load() 하위 프로시저가 끝납니다.
  6. Combo라는 하위 프로시저 시작Box1_SelectedIndexChanged(). 첫 번째 콤보박스에서 항목이 선택되면 호출됩니다. sender As Object는 이벤트를 발생시킨 객체를 참조하는 반면 e As EventArgs는 이벤트 데이터를 갖습니다.
  7. 콤보 만들기Box2 비어 있으면 모든 항목을 지웁니다.
  8. 조건을 생성합니다. Combo에서 선택한 항목이 맞는지 확인Box1은 남성입니다.
  9. 콤보에 니콜라스 아이템 추가Box2 위의 조건이 true인 경우, 즉 콤보에서 선택한 아이템인 경우Box1은 남성입니다.
  10. 콤보에 John 아이템 추가Box2 위의 조건이 true인 경우, 즉 콤보에서 선택한 아이템인 경우Box1은 남성입니다.
  11. 조건을 생성합니다. Combo에서 선택한 항목이 맞는지 확인Box1은 여성입니다.
  12. 콤보에 앨리스 아이템 추가Box2 위의 조건이 true인 경우, 즉 콤보에서 선택한 아이템인 경우Box1은 여성입니다.
  13. 콤보에 그레이스 아이템 추가Box2 위의 조건이 true인 경우, 즉 콤보에서 선택한 아이템인 경우Box1은 여성입니다.
  14. If 블록의 끝입니다.
  15. 콤보의 끝Box1_SelectedIndexChanged() 하위 프로시저.
  16. Form1 수업이 끝났습니다.

자주 묻는 질문

콤보Box 화살표를 클릭하기 전까지 목록을 숨겨 공간을 절약하고, 입력값을 받을 수 있습니다. 목록Box 모든 항목을 한 번에 표시하고 선택만 허용합니다.

DropDownStyle은 동작 방식을 선택합니다. DropDown(기본값)은 사용자가 자유 텍스트를 입력할 수 있도록 하고, DropDownList는 입력을 목록에 있는 항목으로 제한하며, Simple은 목록을 항상 열어 둡니다.

SelectedIndex는 0부터 시작하는 위치를 반환하고, SelectedItem은 해당 행에 바인딩된 개체를 반환하며, Text는 사용자가 입력한 텍스트를 포함하여 편집 상자의 문자열을 반환합니다.

전화 콤보Box1.Items.Clear()를 사용하여 목록을 비웁니다. 편집 상자에 표시되는 텍스트도 초기화하려면 그 뒤에 Combo를 추가합니다.Box1.SelectedIndex = -1 또는 콤보 설정Box1.텍스트 = 문자열.빈 문자열.

속성 창이나 코드에서 DropDownStyle 속성을 DropDownList로 설정하십시오(콤보).Box1. 드롭다운스타일 = 콤보BoxStyle.DropDownList). 그러면 사용자는 목록에 이미 있는 항목만 선택할 수 있습니다.

TextChanged 이벤트는 사용자가 텍스트 상자 부분을 편집하는 동안 발생합니다. SelectedIndexChanged 이벤트는 드롭다운 목록에서 선택된 항목이 마우스, 키보드 또는 코드를 통해 변경될 때만 발생합니다.

예. GitHub 부조종사 일반 영어 주석을 완전한 SelectedIndexChanged 또는 DataBindings 블록으로 변환합니다. 생성된 코드는 배포 전에 항상 검토하십시오.ping.

예. Visual Studio 2026은 Copilot과 함께 사용할 수 있습니다. 인텔리Code 콤보의 전체 줄 및 문맥 인식 자동 완성 기능을 위해Box 부동산 및 행사.

이 게시물을 요약하면 다음과 같습니다.