VB.Net ComboBox Ohjaa EXAMPLE:lla
⚡ Älykäs yhteenveto
ComboBox VB.Netissä on Windows Lomakeohjausobjekti, joka yhdistää tekstiruudun ja avattavan luettelon, jolloin käyttäjä voi valita tai kirjoittaa yhden kohteen, mikä säästää tilaa lomakkeella.
Mikä on Combobox Control?
Yhdistelmäsäätimen avulla voit näyttää avattavan luettelon, jossa on monia kohteita. Katso se yhdistelmänä tekstilaatikosta, johon käyttäjä kirjoittaa tekstiä, ja avattavasta luettelosta, josta käyttäjä valitsee kohteen. Huomaa, että yhdistelmälaatikko näyttää yhden kohteen kerrallaan.
Yhdistelmälaatikon luominen
YhdistelmäBox voidaan luoda seuraavasti:
Vaihe 1) Luo uusi sovellus.
Vaihe 2) Vedä yhdistelmäruudun ohjausobjekti työkalupakista lomakkeeseen.
Olet luonut yhdistelmälaatikon ohjausobjektin.
Kohteiden lisääminen yhdistelmälaatikkoon
Nyt kun olemme luoneet yhdistelmälaatikon, osoitamme, kuinka siihen lisätään kohteita.
Double napsauta lisäämääsi yhdistelmälaatikkoa. Sinut siirretään suunnittelu-välilehdeltä koodia sisältävälle välilehdelle.
Jos haluat lisätä kohteen yhdistelmälaatikon ohjausobjektiin, käytämme Items-ominaisuutta. Osoittakaamme tämä lisäämällä yhdistelmälaatikkoon kaksi kohdetta, Male ja Female:
ComboBox1.Items.Add("Male") ComboBox1.Items.Add("Female")
Voimme myös lisätä kohteita yhdistelmälaatikkoon suunnittelun aikana Ominaisuudet-ikkunasta. Tässä ovat vaiheet:
Vaihe 1) Avaa suunnitteluvälilehti ja napsauta yhdistelmäruudun ohjausobjektia.
Vaihe 2) Siirry Ominaisuudet-ikkunaan ja tarkastele Kohteet-vaihtoehtoa.
Vaihe 3) Napsauta …-painiketta, joka sijaitsee (Kokoelma)-kohdan oikealla puolella.
Vaihe 4) Näet uuden ikkunan. Tähän sinun tulee lisätä kohteita yhdistelmävalikkoon alla olevan kuvan mukaisesti:
Vaihe 5) Kun olet valmis ty:n kanssaping kohteet, napsauta OK-painiketta.
Vaihe 6) Napsauta Käynnistä-painiketta ylätyökalurivillä ja napsauta sitten avattavan valikon kuvaketta yhdistelmäruudussa.
Kohteet lisättiin onnistuneesti yhdistelmälaatikon ohjausobjektiin.
Yhdistelmälaatikon kohteiden valitseminen
Saatat joutua asettamaan oletuskohteen, joka valitaan, kun lomake ladataan. Voit saavuttaa tämän SelectedItem()-menetelmällä. Esimerkiksi, jos haluat määrittää valitun oletussukupuolen arvoksi Mies, voit käyttää seuraavaa lausetta:
ComboBox1.SelectedItem = "Male"
Kun suoritat koodin, yhdistelmälaatikon ohjausobjektin tulee olla alla olevan kuvan mukainen:
Haetaan yhdistelmälaatikon arvoja
Voit hakea valitun kohteen yhdistelmävalikosta. Tämä voidaan tehdä käyttämällä text-ominaisuutta. Havainnollistetaan tätä käyttämällä yllä olevaa yhdistelmävalikkoa, jossa on kaksi kohdetta, Mies ja Nainen. Noudata alla olevia ohjeita:
Vaihe 1) Double Napsauta yhdistelmäruutua avataksesi VB.Net-koodia sisältävän välilehden.
Vaihe 2) Lisää seuraava koodi:
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
Vaihe 3) Suorita koodi napsauttamalla työkalupalkin Käynnistä-painiketta. Sinun pitäisi saada seuraava lomake:
Vaihe 4) Napsauta alasvetovalikkoa ja valitse sukupuolesi. Minun tapauksessani valitsen Mies, ja saan seuraavan:
Tässä on kuvakaappaus koodista:
Selitys Code:
- Luodaan luokka nimeltä Form1. Luokka on julkisesti käytettävissä, koska sen käyttöoikeusmuuttajaksi on asetettu Julkinen.
- Combo-nimisen aliproseduurin aloittaminenBox1_SelectedIndexChanged. Tämä luodaan automaattisesti, kun kaksoisnapsautat yhdistelmäruudun ohjausobjektia suunnitteluvälilehdellä. Tämä alitoimintosarja kutsutaan, kun valitset kohteen yhdistelmäruudusta. sd As Object viittaa tapahtuman käynnistäneeseen objektiin, kun taas event As EventArgs sisältää tapahtumatiedot.
- Merkkijonomuuttujan var_gender luominen.
- Muuttujan var_gender arvon asettaminen yhdistelmäruudussa valitulle kohteelle.
- Muuttujan var_gender arvon tulostaminen viestissäBox.
- Combon loppuBox1_SelectedIndexChanged alimenettely.
- Form1-luokan loppu.
Yhdistelmälaatikon kohteiden poistaminen
Voit poistaa kohteen yhdistelmälaatikostasi. Voit saavuttaa tämän kahdella tavalla. Voit käyttää joko nimikehakemistoa tai nimikkeen nimeä.
Kun käytät nimikeindeksiä, sinun tulee käyttää Items.RemoveAt()-ominaisuutta alla olevan kuvan mukaisesti:
ComboBox1.Items.RemoveAt(1)
Yllä olevassa esimerkissä poistamme yhdistelmälaatikon indeksissä 1 olevan kohteen. Huomaa, että yhdistelmälaatikon indeksit alkavat indeksistä 0, mikä tarkoittaa, että yllä oleva komento poistaa yhdistelmälaatikon toisen kohteen.
Jos haluat poistaa kohteen sen nimellä, sinun tulee käyttää Items.Remove()-ominaisuutta alla kuvatulla tavalla:
ComboBox1.Items.Remove("Female")
Yllä olevan koodin pitäisi poistaa yhdistelmästä NainenBox1.
Sitova tietolähde
YhdistelmäBox voidaan täyttää tietojoukosta. Harkitse alla olevaa SQL-kyselyä:
select emp_id, emp_name from employees;
Voit luoda tietolähteen ohjelmassa ja käyttää seuraavaa koodia sen sitomiseen:
comboBox1.DataSource = ds.Tables(0) comboBox1.ValueMember = "emp_id" comboBox1.DisplayMember = "emp_name"
Tämä tarjoaa sinulle helpon tavan täyttää yhdistelmälaatikon ohjausobjekti tiedoilla ilman, että sinun tarvitsee kirjoittaa jokaista yksittäistä kohdetta.
SelectedIndexChanged tapahtuma
Usein haluat ohjelman reagoivan heti, kun käyttäjä valitsee uuden arvon.
Tämän tyyppinen tapahtuma kutsutaan, kun muutat valittua kohdetta yhdistelmälaatikossasi. Tätä tapahtumaa sinun tulee käyttää, kun sinun on suoritettava toiminto yhdistelmälaatikon valitun kohteen muutoksen yhteydessä. Osoittakaamme tämä esimerkin avulla:
Vaihe 1) Luo uusi Windows Lomakkeet Hakemus.
Vaihe 2) Sen jälkeen sinun on vedettävä ja pudotettava kaksi yhdistelmäruudun ohjausobjektia lomakkeeseen.
Vaihe 3) Double Napsauta lomakkeen sisällä avataksesi koodin välilehden. Syötä seuraava koodi:
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
Vaihe 4) Suorita koodi napsauttamalla yläpalkin Käynnistä-painiketta. Sinun pitäisi saada seuraava tuloste:
Vaihe 5) Napsauta ensimmäisen yhdistelmäruudun alasvetovalikkoa ja valitse Mies. Siirrä hiiren kursori toiseen yhdistelmäruutuun ja napsauta sen alasvetovalikkoa. Katso käytettävissä olevat kohteet:
Vaihe 6) Siirry ensimmäiseen yhdistelmäruutuun ja valitse NainenSiirry toiseen yhdistelmäruutuun ja katso käytettävissä olevat kohteet:
Tässä on kuvakaappaus koodista:
Selitys Code:
- Luodaan luokka nimeltä Form1.
- Form1_Load()-nimisen aliproseduurin alku. Tämä käynnistyy, kun lomake on ladattu. sd As Object viittaa tapahtuman käynnistäneeseen objektiin, kun taas event As EventArgs sisältää tapahtumatiedot.
- Kohteen Miehet lisääminen yhdistelmäänBox1.
- Kohteen Naiset lisääminen yhdistelmäänBox1.
- Form1_Load()-alimenettelyn loppu.
- Combo-nimisen alimenettelyn aloitusBox1_SelectedIndexChanged(). Tämä otetaan käyttöön, kun kohde valitaan ensimmäisestä yhdistelmälaatikosta. Lähettäjä As Object viittaa objektiin, joka nosti tapahtuman, kun taas e As EventArgsilla on tapahtumatiedot.
- Tee ComboBox2 tyhjä, poista kaikki kohteet siitä.
- Ehdon luominen. Tarkistetaan, onko valittu kohde yhdistelmässäBox1 on miehiä.
- Lisää Nicholas yhdistelmäänBox2, kun yllä oleva ehto on totta, eli Combossa valittu kohdeBox1 on mies.
- Lisää kohde John yhdistelmäänBox2, kun yllä oleva ehto on totta, eli Combossa valittu kohdeBox1 on miehiä.
- Ehdon luominen. Tarkistetaan, onko valittu kohde yhdistelmässäBox1 on naaraat.
- Lisää esine Alice yhdistelmäänBox2, kun yllä oleva ehto on totta, eli Combossa valittu kohdeBox1 on naaraat.
- Lisää esine Grace yhdistelmäänBox2, kun yllä oleva ehto on totta, eli Combossa valittu kohdeBox1 on naaraat.
- If-lohkon loppu.
- Combon loppuBox1_SelectedIndexChanged() -alimenettely.
- Luokan päättyminen Lomake1.













