VB.Net ComboBox Steuern Sie mit EXAMPLE
Was ist ein Combobox-Steuerelement?
Mit dem Combobox-Steuerelement können Sie eine Dropdown-Liste mit mehreren Elementen anzeigen. Stellen Sie es sich als eine Kombination aus einem Textfeld vor, in das ein Benutzer Text eingibt, und einer Dropdown-Liste, aus der er ein Element auswählt. Beachten Sie, dass in der Combobox immer nur ein Element angezeigt wird.
Erstellen einer Combobox
Eine ComboBox kann wie folgt erstellt werden:
Schritt 1) Erstellen Sie eine neue Anwendung.
Schritt 2) Ziehen Sie ein Combobox-Steuerelement aus der Toolbox in das Formular.
Sie haben ein Combobox-Steuerelement erstellt.
Elemente zur Combobox hinzufügen
Nachdem wir nun eine Combobox erstellt haben, wollen wir zeigen, wie man ihr Elemente hinzufügt.
Double Klicken Sie auf das Kombinationsfeld-Steuerelement, das Sie hinzugefügt haben. Sie werden von der Registerkarte „Entwurf“ zur Registerkarte mit Code weitergeleitet.
Um einem Combobox-Steuerelement ein Element hinzuzufügen, verwenden wir die Eigenschaft Items. Lassen Sie uns dies demonstrieren, indem wir der Combobox zwei Elemente hinzufügen: Male und Female:
ComboBox1.Items.Add("Male") ComboBox1.Items.Add("Female")
Wir können der Combobox auch zur Entwurfszeit über das Eigenschaftenfenster Elemente hinzufügen. So gehen Sie vor:
Schritt 1) Öffnen Sie die Registerkarte „Entwurf“ und klicken Sie auf das Kombinationsfeld-Steuerelement.
Schritt 2) Gehen Sie zum Fenster „Eigenschaften“ und sehen Sie sich die Option „Elemente“ an.
Schritt 3) Klicken Sie auf … rechts neben (Sammlung).
Schritt 4)Sie sehen ein neues Fenster. Hier sollten Sie Elemente zur Combobox hinzufügen, wie unten gezeigt:
Schritt 5) Wenn Sie mit der Eingabe der Elemente fertig sind, klicken Sie auf die Schaltfläche „OK“.
Schritt 6) Klicken Sie in der oberen Symbolleiste auf die Schaltfläche „Start“ und dann auf das Dropdown-Symbol in der Kombinationsbox.
Die Elemente wurden erfolgreich zum Combobox-Steuerelement hinzugefügt.
Auswählen von Combobox-Elementen
Möglicherweise müssen Sie das Standardelement festlegen, das beim Laden des Formulars ausgewählt wird. Sie können dies über die Methode SelectedItem() erreichen. Um beispielsweise das standardmäßig ausgewählte Geschlecht auf Männlich festzulegen, können Sie die folgende Anweisung verwenden:
ComboBox1.SelectedItem = "Male"
Wenn Sie den Code ausführen, sollte das Combobox-Steuerelement wie unten dargestellt aussehen:
Abrufen von Combobox-Werten
Sie können das ausgewählte Element aus Ihrer Combobox abrufen. Dies kann mithilfe der Texteigenschaft erfolgen. Lassen Sie uns dies anhand unserer obigen Combobox mit zwei Elementen demonstrieren, nämlich „Männlich“ und „Weiblich“. Befolgen Sie die unten angegebenen Schritte:
Schritt 1) Double Klicken Sie auf die Combobox, um die Registerkarte mit VB.NET Code.
Schritt 2) Fügen Sie den folgenden Code hinzu:
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
Schritt 3) Klicken Sie in der Symbolleiste auf die Schaltfläche „Start“, um den Code auszuführen. Sie sollten das folgende Formular erhalten:
Schritt 4) Klicken Sie auf die Dropdown-Schaltfläche und wählen Sie Ihr Geschlecht aus. In meinem Fall wähle ich Männlich und erhalte Folgendes:
Hier ist ein Screenshot des Codes:
Erläuterung des Codes:
- Erstellen einer Klasse mit dem Namen Form1. Die Klasse ist öffentlich zugänglich, da ihr Zugriffsmodifikator auf „Öffentlich“ gesetzt wurde.
- Starten einer Unterprozedur namens ComboBox1_SelectedIndexChanged. Dies wird automatisch generiert, wenn Sie auf der Registerkarte „Entwurf“ auf das Kombinationsfeld doppelklicken. Diese Unterprozedur wird aufgerufen, wenn Sie ein Element aus dem Kombinationsfeld auswählen. Das Objekt „sd As“ verweist auf das Objekt, das das Ereignis ausgelöst hat, während das Ereignis „Event As EventArgs“ die Ereignisdaten „s“ enthält.
- Erstellen einer Zeichenfolgen-Ganzzahl mit dem Namen var_gender.
- Festlegen des Wertes der Variablen var_gender auf das in der Kombinationsbox ausgewählte Element.
- Drucken des Werts der Variablen var_gender in einer NachrichtBox.
- Ende der ComboBox1_SelectedIndexChanged-Unterprozedur.
- Ende der Form1-Klasse.
Combobox-Elemente entfernen
Sie können ein Element aus Ihrer Combobox entfernen. Dies können Sie auf zwei Arten tun. Sie können entweder den Elementindex oder den Namen des Elements verwenden.
Wenn Sie den Artikelindex verwenden, sollten Sie die Eigenschaft Items.RemoveAt() wie unten gezeigt verwenden:
ComboBox1.Items.RemoveAt(1)
Im obigen Beispiel entfernen wir das Element am Index 1 der Combobox. Beachten Sie, dass die Combobox-Indizes beim Index 0 beginnen, was bedeutet, dass der obige Befehl das zweite Element der Combobox entfernt.
Um das Element anhand seines Namens zu entfernen, sollten Sie die Eigenschaft Items.Remove() wie unten gezeigt verwenden:
ComboBox1.Items.Remove("Female")
Der obige Code sollte das Element mit dem Namen „Weiblich“ aus der Combo entfernenBox1.
Bindungsdatenquelle
Eine ComboBox kann aus einem Datensatz ausgefüllt werden. Betrachten Sie die unten angegebene SQL-Abfrage:
select emp_id, emp_name from employees;
Sie können eine Datenquelle in einem Programm erstellen und sie dann mit dem folgenden Code binden:
comboBox1.DataSource = ds.Tables(0) comboBox1.ValueMember = "emp_id" comboBox1.DisplayMember = "emp_name"
Auf diese Weise können Sie Ihr Combobox-Steuerelement ganz einfach mit Daten füllen, ohne jedes einzelne Element eingeben zu müssen.
SelectedIndexChanged-Ereignis
Dieser Ereignistyp wird aufgerufen, wenn Sie das ausgewählte Element in Ihrer Combobox ändern. Dieses Ereignis sollten Sie verwenden, wenn Sie bei einer Änderung des ausgewählten Elements einer Combobox eine Aktion ausführen müssen. Lassen Sie uns dies anhand eines Beispiels demonstrieren:
Schritt 1) Erstellen Sie eine neue Windows Forms-Anwendung.
Schritt 2) Danach müssen Sie Ziehen Sie zwei Combobox-Steuerelemente per Drag & Drop in das Formular.
Schritt 3) Double Klicken Sie in das Formular, um die Registerkarte für den Code zu öffnen. Geben Sie den folgenden Code ein:
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
Schritt 4) Klicken Sie in der oberen Leiste auf die Schaltfläche „Start“, um den Code auszuführen. Sie sollten die folgende Ausgabe erhalten:
Schritt 5) Klicken Sie auf die Dropdown-Schaltfläche in der ersten Combobox und wählen Sie „Männlich“. Bewegen Sie den Mauszeiger zur zweiten Combobox und klicken Sie auf die Dropdown-Schaltfläche. Sehen Sie sich die verfügbaren Elemente an:
Schritt 6) Gehen Sie zur ersten Combobox und wählen Sie „Weiblich“. Gehen Sie zur zweiten Combobox und sehen Sie sich die verfügbaren Elemente an:
Hier ist ein Screenshot des Codes:
Erläuterung des Codes:
- Erstellen einer Klasse mit dem Namen Form1.
- Beginn einer Unterprozedur namens Form1_Load(). Dies wird ausgelöst, sobald das Formular geladen ist. Das sd-As-Objekt verweist auf das Objekt, das das Ereignis ausgelöst hat, während das System-As-EventArgs über die Ereignisdaten verfügt.
- Hinzufügen des Artikels „Männchen“ zur ComboBox1.
- Hinzufügen des Gegenstands „Weibchen“ zur ComboBox1.
- Ende der Unterprozedur Form1_Load().
- Beginn einer Unterprozedur namens ComboBox1_SelectedIndexChanged(). Dies wird aufgerufen, wenn ein Element in der ersten Combobox ausgewählt wird. Das sender-As-Objekt verweist auf das Objekt, das das Ereignis ausgelöst hat, während das e-As-EventArgs die Ereignisdaten enthält.
- Machen Sie ComboBox2 leer, alle Gegenstände daraus entfernen.
- Eine Bedingung erstellen. Es wird überprüft, ob das ausgewählte Element auf ComboBox1 ist männlich.
- Füge den Gegenstand Nikolaus zur Combo hinzuBox2, wenn die obige Bedingung wahr ist, d. h. das Element wurde bei Combo ausgewähltBox1 ist männlich.
- Fügen Sie den Artikel John zur Combo hinzuBox2, wenn die obige Bedingung wahr ist, d. h. das Element wurde bei Combo ausgewähltBox1 ist männlich.
- Eine Bedingung erstellen. Es wird überprüft, ob das ausgewählte Element auf ComboBox1 ist weiblich.
- Fügen Sie den Artikel Alice zur Combo hinzuBox2, wenn die obige Bedingung wahr ist, d. h. das Element wurde bei Combo ausgewähltBox1 ist weiblich.
- Füge den Gegenstand Grace zur Combo hinzuBox2, wenn die obige Bedingung wahr ist, d. h. das Element wurde bei Combo ausgewähltBox1 ist weiblich.
- Ende des If-Blocks.
- Ende der ComboBoxUnterprozedur 1_SelectedIndexChanged().
- Ende der Klasse Form1.
Zusammenfassung
- Eine ComboBox wird durch Ziehen und Ablegen aus der Toolbox im Formular erstellt.
- Es bietet uns die Möglichkeit, dem Benutzer zahlreiche Optionen zu präsentieren.
- Wir können das Standardelement festlegen, das in der Combo ausgewählt werden sollBox wenn das Formular geladen wird.
- Mithilfe des Ereignisses „SelectedIndexChanged“ können wir die Aktion festlegen, die ausgeführt werden soll, wenn ein bestimmtes Element in der Kombinationsbox ausgewählt wird.