VB.Net-comboBox Controle met VOORBEELD

โšก Slimme samenvatting

ComboBox in VB.Net is een Windows Een formulierbesturingselement dat een tekstvak combineert met een keuzelijst, waardoor de gebruiker รฉรฉn item kan selecteren of zelf een item kan typen, wat ruimte bespaart op het formulier.

  • ๐ŸŽฏ Doel: Toon een keuzelijst waarin de gebruiker รฉรฉn waarde kan selecteren of typen.
  • โž• Voeg items toe: Vul de keuzelijst in het venster Eigenschappen of met Items.Add tijdens de uitvoering.
  • ๐Ÿ” Lees de selectie: SelectedItem, SelectedIndex en Text retourneren de waarde die de gebruiker heeft gekozen.
  • ๏ธ Bindingsgegevens: Stel DataSource, DisplayMember en ValueMember in om rijen uit een dataset te laden.
  • ๐Ÿ”” Wijzigingen detecteren: De SelectedIndexChanged-gebeurtenis wordt geactiveerd wanneer het geselecteerde item verandert.
  • ๐Ÿค– AI-ondersteuning: GitHub Copilot en Visual Studio IntelliCode schrijf ComboBox Handlers worden automatisch geactiveerd tijdens het typen.

VB.Net-comboBox Controleer:

Wat is Combobox Control?

Met de combobox-besturing kunt u een vervolgkeuzelijst met veel items weergeven. Zie het als een combinatie van een tekstvak waarin een gebruiker tekst invoert en een vervolgkeuzelijst waaruit een gebruiker een item selecteert. Let op dat de combobox รฉรฉn item tegelijk weergeeft.

Een keuzelijst maken

Een comboBox kan als volgt worden aangemaakt:

Stap 1) Maak een nieuwe applicatie aan.

Stap 2) Sleep een keuzelijstbesturingselement vanuit de gereedschapskist naar het formulier.

VB.Net combobox-besturingselement dat vanuit de toolbox is gesleept naar een Windows Form

U hebt nu een keuzelijstbesturingselement gemaakt.

Items toevoegen aan de keuzelijst

Nu we een keuzelijst hebben gemaakt, laten we zien hoe u er items aan kunt toevoegen.

Double Klik op de combobox-besturing die u hebt toegevoegd. U wordt verplaatst van het tabblad Design naar het tabblad met code.

Om een โ€‹โ€‹item toe te voegen aan een combobox-besturingselement, gebruiken we de Items-eigenschap. Laten we dit demonstreren door twee items toe te voegen aan de combobox, Male en Female:

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

We kunnen er ook voor kiezen om items toe te voegen aan de combobox tijdens het ontwerpen vanuit het Properties-venster. Dit zijn de stappen:

Stap 1) Open het tabblad Ontwerp en klik op het keuzelijstbesturingselement.

Stap 2) Ga naar het venster Eigenschappen en bekijk de optie Items.

Stap 3) Klik op de โ€ฆ rechts van (Collectie).

Items toevoegen aan een VB.Net combobox in code met de Items.Add-methode

Het VB.Net-eigenschappenvenster opent de combobox Items Collection-editor.

Stap 4) Er verschijnt een nieuw venster. Hier kunt u items aan de keuzelijst toevoegen, zoals hieronder weergegeven:

String Collection Editor toont de keuzelijstitems voor mannen en vrouwen.

Stap 5) Zodra je klaar bent met typing Selecteer de items en klik vervolgens op de OK-knop.

Stap 6) Klik op de Start-knop in de bovenste werkbalk en klik vervolgens op het vervolgkeuzemenu-icoon in de keuzelijst.

VB.Net combobox die 'Man' standaard geselecteerd weergeeft tijdens de uitvoering.

De items zijn succesvol toegevoegd aan het keuzerondje.

Keuzelijstitems selecteren

Mogelijk moet u het standaarditem instellen dat wordt geselecteerd wanneer het formulier wordt geladen. U kunt dit bereiken via de methode SelectedItem(). Om bijvoorbeeld het standaard geselecteerde geslacht in te stellen op Man, kunt u de volgende instructie gebruiken:

ComboBox1.SelectedItem = "Male"

Wanneer u de code uitvoert, zou het keuzerondje er als volgt uit moeten zien:

VB.Net-formulier met een keuzelijst (combobox) met de opties 'Man' en 'Vrouw'.

Combobox-waarden ophalen

Je kunt het geselecteerde item uit je keuzelijst ophalen. Dit kan met behulp van de eigenschap `text`. Laten we dit demonstreren met de bovenstaande keuzelijst met twee items, namelijk 'Man' en 'Vrouw'. Volg de onderstaande stappen:

Stap 1) Double Klik op de keuzelijst om het tabblad met de VB.Net-code te openen.

Stap 2) Voeg de volgende code toe:

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

Stap 3) Klik op de knop 'Start' in de werkbalk om de code uit te voeren. Je zou het volgende formulier moeten zien:

Code schermafbeelding van de SelectedIndexChanged-gebeurtenishandler van een combobox in VB.Net.

Stap 4) Klik op de dropdownknop en kies je geslacht. In mijn geval kies ik Man, en dan krijg ik het volgende:

VB.Net-berichtvenster met de tekst van het geselecteerde keuzelijstitem: Man

Hier is een screenshot van de code:

Uitleg van Code:

  1. Een klasse maken met de naam Form1. De klasse is openbaar toegankelijk omdat de toegangsmodificator is ingesteld op Openbaar.
  2. Een subprocedure met de naam Combo startenBox1_SelectedIndexChanged. Deze wordt automatisch gegenereerd wanneer u dubbelklikt op het keuzelijstbesturingselement in het tabblad Ontwerp. Deze subprocedure wordt aangeroepen wanneer u een item in de keuzelijst selecteert. `sd As Object` verwijst naar het object dat de gebeurtenis heeft geactiveerd, terwijl `evnt As EventArgs` de gebeurtenisgegevens bevat.
  3. Een String-variabele aanmaken met de naam var_gender.
  4. De waarde van variabele var_gender instellen op het item dat is geselecteerd in de keuzelijst.
  5. De waarde van de variabele var_gender afdrukken in een bericht.Box.
  6. Einde van de combiBox1_SelectedIndexChanged subprocedure.
  7. Einde van de Form1-klasse.

Combobox-items verwijderen

Het is mogelijk om een โ€‹โ€‹item uit uw combobox te verwijderen. Er zijn twee manieren om dit te doen. U kunt de itemindex of de naam van het item gebruiken.

Wanneer u de itemindex gebruikt, moet u de eigenschap Items.RemoveAt() gebruiken, zoals hieronder weergegeven:

ComboBox1.Items.RemoveAt(1)

In het bovenstaande voorbeeld verwijderen we het item dat zich op index 1 van de combobox bevindt. Let op dat comboboxindexen beginnen bij index 0, wat betekent dat de bovenstaande opdracht het tweede item van de combobox verwijdert.

Om het item met behulp van de naam te verwijderen, moet u de eigenschap Items.Remove() gebruiken, zoals hieronder weergegeven:

ComboBox1.Items.Remove("Female")

De bovenstaande code zou het item met de naam Female uit de Combo moeten verwijderenBox1.

Bindende gegevensbron

Een comboBox kan worden gevuld vanuit een gegevensset. Beschouw de onderstaande SQL-query:

select emp_id, emp_name from employees; 

U kunt een gegevensbron in een programma maken en vervolgens de volgende code gebruiken om deze te binden:

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

Hiermee kunt u eenvoudig gegevens in uw keuzelijst plaatsen, zonder dat u elk afzonderlijk item hoeft in te voeren.

SelectedIndexChanged-gebeurtenis

Vaak wilt u dat uw programma reageert zodra de gebruiker een nieuwe waarde selecteert.

Dit type gebeurtenis wordt aangeroepen wanneer u het geselecteerde item op uw combobox wijzigt. Het is de gebeurtenis die u moet gebruiken wanneer u een actie moet implementeren na een wijziging op het geselecteerde item van een combobox. Laten we dit demonstreren aan de hand van een voorbeeld:

Stap 1) Maak een nieuwe Windows Formulieren aanvraag.

Stap 2) Vervolgens moet u twee keuzelijstbesturingselementen naar het formulier slepen.

Twee combobox-besturingselementen naast elkaar geplaatst in een VB.Net-applicatie. Windows Form

Stap 3) Double Klik binnen het formulier om het tabblad voor de code te openen. Voer de volgende code in:

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

Stap 4) Klik op de knop 'Start' in de bovenste balk om de code uit te voeren. Je zou de volgende uitvoer moeten krijgen:

De eerste keuzelijst wordt gevuld met 'Mannen' en 'Vrouwen' bij het laden van het formulier.

Stap 5) Klik op de vervolgkeuzeknop in het eerste keuzelijstje en kies 'Man'. Beweeg de muiscursor naar het tweede keuzelijstje en klik op de vervolgkeuzeknop daarvan. Bekijk de beschikbare opties:

Tweede keuzelijst met Nicholas en John nadat 'Mannen' is geselecteerd

Stap 6) Ga naar het eerste keuzemenu en kies VrouwenGa naar het tweede keuzemenu en bekijk de beschikbare items:

Tweede keuzelijst met Alice en Grace nadat 'Vrouwen' is geselecteerd

Hier is een screenshot van de code:

Code schermafbeelding van de SelectedIndexChanged-handler voor twee keuzelijsten in VB.Net

Uitleg van Code:

  1. Een klasse maken met de naam Form1.
  2. Begin van een subprocedure genaamd Form1_Load(). Deze wordt geactiveerd zodra het formulier is geladen. sd As Object verwijst naar het object dat de gebeurtenis heeft veroorzaakt, terwijl evnt As EventArgs de gebeurtenisgegevens bevat.
  3. Het item Mannetjes toevoegen aan de ComboBox1.
  4. Het item Vrouwtjes toevoegen aan de ComboBox1.
  5. Einde van de subprocedure Form1_Load().
  6. Start van een subprocedure genaamd ComboBox1_SelectedIndexChanged(). Dit wordt aangeroepen wanneer een item wordt geselecteerd in de eerste combobox. De afzender As Object verwijst naar het object dat de gebeurtenis heeft veroorzaakt, terwijl de e As EventArgs de gebeurtenisgegevens heeft.
  7. Combinatie makenBox2 leeg, verwijder alle items ervan.
  8. Het creรซren van een voorwaarde. Controleren of het geselecteerde item op Combo staatBox1 is mannetjes.
  9. Voeg het item Nicholas toe aan de ComboBox2 wanneer de bovenstaande voorwaarde waar is, dat wil zeggen, item geselecteerd op ComboBox1 is mannelijk.
  10. Voeg het item John toe aan de ComboBox2 wanneer de bovenstaande voorwaarde waar is, dat wil zeggen, item geselecteerd op ComboBox1 is mannetjes.
  11. Het creรซren van een voorwaarde. Controleren of het geselecteerde item op Combo staatBox1 is vrouwtjes.
  12. Voeg het item Alice toe aan de ComboBox2 wanneer de bovenstaande voorwaarde waar is, dat wil zeggen, item geselecteerd op ComboBox1 is vrouwtjes.
  13. Voeg het item Grace toe aan de ComboBox2 wanneer de bovenstaande voorwaarde waar is, dat wil zeggen, item geselecteerd op ComboBox1 is vrouwtjes.
  14. Einde van het If-blok.
  15. Einde van de combiBox1_SelectedIndexChanged() subprocedure.
  16. Einde van de les Formulier1.

Veelgestelde vragen

Een comboBox Bespaart ruimte door de lijst te verbergen totdat er op de pijl wordt geklikt en accepteert invoer. Een lijstBox Toont alle items tegelijk en staat alleen selectie toe.

DropDownStyle kiest het gedrag: DropDown (standaard) laat de gebruiker vrije tekst typen; DropDownList beperkt de invoer tot items in de lijst; Simple houdt de lijst altijd open.

SelectedIndex retourneert de nulgebaseerde positie, SelectedItem retourneert het object dat aan die rij is gekoppeld en Text retourneert de tekenreeks in het bewerkingsvak, inclusief de tekst die de gebruiker heeft ingevoerd.

BelcombinatieBox1.Items.Clear() om de lijst leeg te maken. Om ook de tekst in het bewerkingsveld te resetten, gebruikt u Combo().Box1.SelectedIndex = -1 of stel Combo inBox1.Tekst = String.Leeg.

Stel de eigenschap DropDownStyle in op DropDownList in het venster Eigenschappen of in de code (ComboBox1.DropdownStyle = ComboBoxStyle.DropDownList). De gebruiker kan dan alleen items selecteren die al in de lijst staan.

TextChanged wordt geactiveerd wanneer de gebruiker het tekstvak bewerkt. SelectedIndexChanged wordt alleen geactiveerd wanneer het geselecteerde item in de vervolgkeuzelijst verandert, ongeacht of dit via de muis, het toetsenbord of code gebeurt.

Ja. GitHub-copiloot Converteert een commentaar in gewoon Engels naar een volledig SelectedIndexChanged- of DataBindings-blok. Controleer de gegenereerde code altijd voordat u deze publiceert.ping.

Ja. Visual Studio 2026 koppelt Copilot aan IntellectueelCode voor contextbewuste aanvullingen van combinaties op hele regelsBox eigenschappen en evenementen.

Vat dit bericht samen met: