VB.Net ComboBox Vezérlés az EXAMPLE-vel
Mi az a Combobox Control?
A kombinált vezérlő segítségével sok elemet tartalmazó legördülő lista jeleníthető meg. Tekintse meg egy szövegdoboz, amelybe a felhasználó szöveget ír be, és egy legördülő lista kombinációja, amelyből a felhasználó kiválaszt egy elemet. Vegye figyelembe, hogy a kombinált doboz egyszerre csak egy elemet jelenít meg.
Combobox létrehozása
Egy kombóBox a következőképpen hozható létre:
Step 1) Hozzon létre egy új alkalmazást.
Step 2) Húzzon egy kombinált vezérlőt az eszköztárból az űrlapra.
Létrehozott egy kombinált vezérlőt.
Elemek hozzáadása a Comboboxhoz
Most, hogy létrehoztunk egy kombinált dobozt, mutassuk meg, hogyan adhatunk hozzá elemeket.
Double kattintson a hozzáadott kombinált vezérlőelemre. A tervezés lapról a kódot tartalmazó lapra kerül.
Ha egy elemet szeretne hozzáadni egy kombinált vezérlőhöz, akkor az Items tulajdonságot használjuk. Mutassuk meg ezt úgy, hogy hozzáadunk két elemet a kombinált dobozhoz, a férfit és a nőt:
ComboBox1.Items.Add("Male") ComboBox1.Items.Add("Female")
Azt is megválaszthatjuk, hogy a Tulajdonságok ablakból a tervezés időpontjában adjunk hozzá elemeket a kombinált dobozhoz. Íme a lépések:
Step 1) Nyissa meg a Tervezés lapot, és kattintson a kombinált vezérlőelemre.
Step 2) Lépjen a Tulajdonságok ablakba, és tekintse meg az Elemek lehetőséget.
Step 3) Kattintson a (Gyűjtemény) jobb oldalán található … ikonra.
Step 4)Egy új ablakot fog látni. Itt kell hozzáadnia elemeket a kombinált dobozhoz, az alábbiak szerint:
Step 5) Ha végzett az elemek beírásával, kattintson az OK gombra.
Step 6) Kattintson a Start gombra a felső eszköztáron, és kattintson a legördülő ikonra a kombinált listán.
Az elemek sikeresen hozzáadva a kombinált vezérlőhöz.
A Combobox elemek kiválasztása
Előfordulhat, hogy be kell állítania az űrlap betöltésekor kiválasztandó alapértelmezett elemet. Ezt a SelectedItem() metódussal érheti el. Ha például az alapértelmezett kiválasztott nemet Férfi értékre szeretné beállítani, használja a következő utasítást:
ComboBox1.SelectedItem = "Male"
A kód futtatásakor a kombinált vezérlőelemnek az alábbiak szerint kell lennie:
Combobox értékek lekérése
A kiválasztott elemet lekérheti a kombinált dobozból. Ezt a text tulajdonság segítségével lehet megtenni. Mutassuk meg ezt a fenti kombinált dobozunk segítségével, két elemmel, azaz a férfival és a nővel. Kövesse az alábbi lépéseket:
Step 1) Double kattintson a kombinált mezőre a lap megnyitásához VB.NET kód.
Step 2) Adja hozzá a következő kódot:
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
Step 3) Kattintson a Start gombra az eszköztáron a kód végrehajtásához. A következő űrlapot kell megkapnia:
Step 4) Kattintson a legördülő gombra, és válassza ki a nemét. Az én esetemben. A Férfit választom, és a következőket kapom:
Itt van egy képernyőkép a kódról:
A kód magyarázata:
- Form1 nevű osztály létrehozása. Az osztály nyilvánosan elérhető lesz, mivel a hozzáférés-módosítója Nyilvánosra van állítva.
- A Combo nevű aleljárás indításaBox1_SelectedIndexChanged. Ez automatikusan létrejön, ha duplán kattint a kombinált vezérlőre a tervezés lapon. Ez az aleljárás akkor kerül meghívásra, amikor kiválaszt egy elemet a kombinált mezőből. Az sd As Object az eseményt előidéző objektumra hivatkozik, míg az As EventArgs esemény az s eseményadatokkal rendelkezik.
- Var_gender nevű karakterlánc egész szám létrehozása.
- A var_gender változó értékének beállítása a kombinált mezőben kiválasztott elemre.
- A var_gender változó értékének nyomtatása egy üzenetreBox.
- A kombó végeBox1_SelectedIndexChanged aleljárás.
- Vége a Form1 osztálynak.
Combobox elemek eltávolítása
Lehetőség van egy elem eltávolítására a kombinált dobozból. Ezt kétféleképpen érheti el. Használhatja a cikkindexet vagy a cikk nevét.
A cikkindex használatakor az Items.RemoveAt() tulajdonságot kell használni az alábbiak szerint:
ComboBox1.Items.RemoveAt(1)
A fenti példában eltávolítjuk a kombinált doboz 1. indexénél található elemet. Vegye figyelembe, hogy a kombinált indexek 0-val kezdődnek, ami azt jelenti, hogy a fenti parancs eltávolítja a kombinált doboz második elemét.
Az elem nevével való eltávolításához használja az Items.Remove() tulajdonságot az alábbiak szerint:
ComboBox1.Items.Remove("Female")
A fenti kódnak el kell távolítania a Female nevű elemet a kombinációbólBox1.
Binding DataSource
Egy kombóBox adatkészletből tölthető fel. Tekintsük az alábbi SQL-lekérdezést:
select emp_id, emp_name from employees;
Létrehozhat egy adatforrást egy programban, majd a következő kóddal kötheti össze:
comboBox1.DataSource = ds.Tables(0) comboBox1.ValueMember = "emp_id" comboBox1.DisplayMember = "emp_name"
Ez egyszerű módot kínál a kombinált vezérlőelem adatokkal való feltöltésére anélkül, hogy minden egyes elemet be kellene írnia.
SelectedIndexChanged esemény
Ez az eseménytípus akkor kerül meghívásra, amikor módosítja a kiválasztott elemet a kombinált dobozban. Ez az az esemény, amelyet akkor kell használni, amikor egy műveletet kell végrehajtania a kombinált doboz kiválasztott elemének módosítása esetén. Mutassuk meg ezt egy példa segítségével:
Step 1) Hozzon létre egy új Window Forms alkalmazást.
2. lépés) Ezt követően meg kell tennie Húzzon két kombinált vezérlőt az űrlapra.
Step 3) Double kattintson az űrlapon belülre a kód lapjának megnyitásához. Írja be a következő kódot:
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
Step 4) A kód futtatásához kattintson a felső sáv Start gombra. A következő kimenetet kell kapnia:
Step 5) Kattintson a legördülő gombra az első kombinált mezőben, és válassza a Férfi lehetőséget. Vigye az egérkurzort a második kombinált dobozra, és kattintson a legördülő gombra. Tekintse meg az elérhető elemeket:
Step 6) Lépjen az első kombinált mezőre, és válassza a Nő lehetőséget. Lépjen a második kombinált mezőre, és tekintse meg az elérhető elemeket:
Itt van egy képernyőkép a kódról:
A kód magyarázata:
- Form1 nevű osztály létrehozása.
- A Form1_Load() nevű aleljárás kezdete. Ez az űrlap betöltése után aktiválódik. Az sd As Object az eseményt előidéző objektumra hivatkozik, míg az As EventArgs rendszer rendelkezik az eseményadatokkal.
- A Férfiak elem hozzáadása a kombinációhozBox1.
- A Nők elem hozzáadása a kombinációhozBox1.
- A Form1_Load() aleljárás vége.
- A Combo nevű aleljárás indításaBox1_SelectedIndexChanged(). Ez akkor lesz meghívva, amikor egy elemet kiválasztanak az első kombinált dobozban. A küldő As Object az eseményt előidéző objektumra hivatkozik, míg az e As EventArgs rendelkezik az eseményadatokkal.
- Készíts Combo-tBox2 üres, törölje le az összes elemet.
- Feltétel létrehozása. Annak ellenőrzése, hogy a kiválasztott elem-e a Combo-nBox1 a férfiak.
- Adja hozzá a Nicholas elemet a kombinációhozBox2, ha a fenti feltétel igaz, vagyis a Combo-n kiválasztott elemBox1 férfi.
- Adja hozzá a János elemet a kombinációhozBox2, ha a fenti feltétel igaz, vagyis a Combo-n kiválasztott elemBox1 a férfiak.
- Feltétel létrehozása. Annak ellenőrzése, hogy a kiválasztott elem-e a Combo-nBox1 a nőstények.
- Adja hozzá az Alice elemet a kombinációhozBox2, ha a fenti feltétel igaz, vagyis a Combo-n kiválasztott elemBox1 a nőstények.
- Adja hozzá a Grace elemet a kombinációhozBox2, ha a fenti feltétel igaz, vagyis a Combo-n kiválasztott elemBox1 a nőstények.
- Az If blokk vége.
- A kombó végeBox1_SelectedIndexChanged() aleljárás.
- Óra vége Form1.
Összegzésként
- Egy kombóBox úgy jön létre, hogy kihúzza az eszköztárból és bedobja az űrlapba.
- Lehetővé teszi számunkra, hogy számos lehetőséget bemutassunk a felhasználónak.
- A Combo-n beállíthatjuk az alapértelmezett elemetBox az űrlap betöltésekor.
- A SelectedIndexChanged esemény segít meghatározni azt a műveletet, amelyet akkor kell végrehajtani, ha egy adott elemet kiválasztunk a kombinált dobozban.