VB.Net 콤보Box 예제로 제어
콤보박스 컨트롤이란?
콤보박스 컨트롤은 여러 항목이 있는 드롭다운 목록을 표시하는 데 도움이 됩니다. 사용자가 텍스트를 입력하는 텍스트 상자와 사용자가 항목을 선택하는 드롭다운 목록의 조합으로 볼 수 있습니다. 콤보박스는 한 번에 하나의 항목을 표시합니다.
콤보박스 만들기
콤보Box 다음과 같이 생성될 수 있습니다:
단계 1) 새 응용 프로그램을 만듭니다.
단계 2) 도구 상자에서 폼으로 콤보 상자 컨트롤을 끌어다 놓습니다.
콤보상자 컨트롤이 생성되었습니다.
콤보박스에 아이템 추가하기
이제 콤보상자를 만들었으니, 콤보상자에 항목을 추가하는 방법을 알아보겠습니다.
Double 추가한 콤보박스 컨트롤을 클릭하세요. 디자인 탭에서 코드가 있는 탭으로 이동됩니다.
콤보박스 컨트롤에 항목을 추가하려면 Items 속성을 사용합니다. 콤보박스에 Male과 Female이라는 두 개의 항목을 추가하여 이를 보여드리겠습니다.
ComboBox1.Items.Add("Male") ComboBox1.Items.Add("Female")
또한 속성 창에서 디자인 타임에 콤보박스에 항목을 추가하도록 선택할 수도 있습니다. 단계는 다음과 같습니다.
단계 1) 디자인 탭을 열고 콤보 상자 컨트롤을 클릭합니다.
단계 2) 속성 창으로 이동하여 항목 옵션을 확인하세요.
단계 3) (컬렉션) 오른쪽에 있는 …를 클릭하세요.
단계 4)새 창이 표시됩니다. 여기서 콤보박스에 항목을 추가해야 합니다. 아래와 같습니다.
단계 5) 항목 입력이 완료되면 확인 버튼을 클릭하세요.
단계 6) 상단 도구 모음에서 시작 버튼을 클릭하고 콤보 상자에서 드롭다운 아이콘을 클릭합니다.
항목이 콤보상자 컨트롤에 성공적으로 추가되었습니다.
콤보박스 항목 선택
폼이 로드될 때 선택될 기본 항목을 설정해야 할 수도 있습니다. SelectedItem() 메서드를 통해 이를 달성할 수 있습니다. 예를 들어, 기본 선택 성별을 남성으로 설정하려면 다음 명령문을 사용할 수 있습니다.
ComboBox1.SelectedItem = "Male"
코드를 실행하면 콤보박스 컨트롤은 아래와 같이 표시됩니다.
콤보박스 값 검색
콤보박스에서 선택한 항목을 가져올 수 있습니다. 이는 text 속성을 사용하여 수행할 수 있습니다. 남성과 여성이라는 두 항목이 있는 위의 콤보박스를 사용하여 이를 보여드리겠습니다. 아래에 제공된 단계를 따르세요.
단계 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) 툴바에서 시작 버튼을 클릭하여 코드를 실행합니다. 다음 양식을 받아야 합니다.
단계 4) 드롭다운 버튼을 클릭하고 성별을 선택하세요. 제 경우에는 남성을 선택했고, 다음과 같은 결과가 나왔습니다.
다음은 코드의 스크린샷입니다.
코드 설명:
- Form1이라는 클래스를 만듭니다. 클래스의 액세스 한정자가 Public으로 설정되었으므로 클래스에 공개적으로 액세스할 수 있습니다.
- Combo라는 하위 프로시저 시작Box1_SelectedIndexChanged. 이것은 디자인 탭에서 콤보박스 컨트롤을 두 번 클릭하면 자동으로 생성됩니다. 이 하위 절차는 콤보박스에서 항목을 선택하면 호출됩니다. sd As Object는 이벤트를 발생시킨 객체를 참조하는 반면, 이벤트 As EventArgs는 이벤트 데이터 s를 갖습니다.
- var_gender라는 문자열 정수를 생성합니다.
- 콤보상자에서 선택된 항목으로 var_gender 변수의 값을 설정합니다.
- 메시지에 var_gender 변수 값 인쇄Box.
- 콤보의 끝Box1_SelectedIndexChanged 하위 프로시저.
- 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) 새 Window Forms 응용 프로그램을 만듭니다.
2 단계) 그 후에는 두 개의 콤보상자 컨트롤을 폼으로 끌어다 놓습니다.
단계 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) 첫 번째 콤보박스로 이동하여 여성을 선택합니다. 두 번째 콤보박스로 이동하여 사용 가능한 항목을 확인합니다.
다음은 코드의 스크린샷입니다.
코드 설명:
- Form1이라는 클래스를 만듭니다.
- Form1_Load()라는 하위 프로시저를 시작합니다. 양식이 로드되면 트리거됩니다. sd As Object는 이벤트를 발생시킨 객체를 참조하는 반면 As EventArgs 시스템에는 이벤트 데이터가 있습니다.
- 콤보에 남성 항목 추가Box1.
- 콤보에 여성 아이템 추가Box1.
- Form1_Load() 하위 프로시저가 끝납니다.
- Combo라는 하위 프로시저 시작Box1_SelectedIndexChanged(). 첫 번째 콤보박스에서 항목이 선택되면 호출됩니다. sender As Object는 이벤트를 발생시킨 객체를 참조하는 반면 e As EventArgs는 이벤트 데이터를 갖습니다.
- 콤보 만들기Box2 비어 있으면 모든 항목을 지웁니다.
- 조건을 생성합니다. Combo에서 선택한 항목이 맞는지 확인Box1은 남성입니다.
- 콤보에 니콜라스 아이템 추가Box2 위의 조건이 true인 경우, 즉 콤보에서 선택한 아이템인 경우Box1은 남성입니다.
- 콤보에 John 아이템 추가Box2 위의 조건이 true인 경우, 즉 콤보에서 선택한 아이템인 경우Box1은 남성입니다.
- 조건을 생성합니다. Combo에서 선택한 항목이 맞는지 확인Box1은 여성입니다.
- 콤보에 앨리스 아이템 추가Box2 위의 조건이 true인 경우, 즉 콤보에서 선택한 아이템인 경우Box1은 여성입니다.
- 콤보에 그레이스 아이템 추가Box2 위의 조건이 true인 경우, 즉 콤보에서 선택한 아이템인 경우Box1은 여성입니다.
- If 블록의 끝입니다.
- 콤보의 끝Box1_SelectedIndexChanged() 하위 프로시저.
- Form1 수업이 끝났습니다.
요약
- 콤보Box 도구 상자에서 끌어서 양식에 놓으면 만들어집니다.
- 이는 사용자에게 다양한 옵션을 제시하는 방법을 제공합니다.
- 콤보에서 기본 항목이 선택되도록 설정할 수 있습니다.Box 양식이 로드될 때.
- SelectedIndexChanged 이벤트는 콤보 상자에서 특정 항목을 선택할 때 수행할 작업을 지정하는 데 도움이 됩니다.