VB.Net ComboBox Έλεγχος με EXAMPLE

⚡ Έξυπνη Σύνοψη

ComboBox στο VB.Net είναι ένα Windows Στοιχείο ελέγχου Φόρμες που συνδυάζει ένα πλαίσιο κειμένου με μια αναπτυσσόμενη λίστα, επιτρέποντας στον χρήστη να επιλέξει ένα μεμονωμένο στοιχείο ή να πληκτρολογήσει ένα, εξοικονομώντας χώρο σε μια φόρμα.

  • 🎯 Σκοπός: Εμφάνιση μιας αναπτυσσόμενης λίστας όπου ο χρήστης επιλέγει ή πληκτρολογεί μία τιμή.
  • Προσθήκη στοιχείων: Συμπληρώστε το σύνθετο πλαίσιο στο παράθυρο Ιδιότητες ή με την εντολή Items.Add κατά τον χρόνο εκτέλεσης.
  • 🔍 Διαβάστε την επιλογή: Οι SelectedItem, SelectedIndex και Text επιστρέφουν την τιμή που έχει επιλέξει ο χρήστης.
  • 🗄️ Δεδομένα σύνδεσης: Ορίστε τις μεταβλητές DataSource, DisplayMember και ValueMember για να φορτώσετε γραμμές από ένα σύνολο δεδομένων.
  • 🔔 Εντοπισμός αλλαγών: Το συμβάν SelectedIndexChanged ενεργοποιείται κάθε φορά που αλλάζει το επιλεγμένο στοιχείο.
  • 🤖 Βοήθεια με την Τεχνητή Νοημοσύνη: GitHub Copilot και Visual Studio IntelliCode γράψτε ComboBox χειριστές καθώς πληκτρολογείτε.

VB.Net ComboBox Έλεγχος

Τι είναι το Combobox Control;

Το στοιχείο ελέγχου combobox σάς βοηθά να εμφανίσετε μια αναπτυσσόμενη λίστα με πολλά στοιχεία. Δείτε το ως συνδυασμό ενός πλαισίου κειμένου στο οποίο ένας χρήστης εισάγει κείμενο και μιας αναπτυσσόμενης λίστας από την οποία ο χρήστης επιλέγει ένα στοιχείο. Σημειώστε ότι το σύνθετο πλαίσιο εμφανίζει ένα στοιχείο κάθε φορά.

Δημιουργία Combobox

Ένας συνδυασμόςBox μπορεί να δημιουργηθεί ως εξής:

Βήμα 1) Δημιουργήστε μια νέα εφαρμογή.

Βήμα 2) Σύρετε ένα στοιχείο ελέγχου σύνθετου πλαισίου από την εργαλειοθήκη στη φόρμα.

Έλεγχος συνδυαστικού πλαισίου VB.Net που αποτέθηκε από την εργαλειοθήκη σε ένα Windows Μορφή

Θα έχετε δημιουργήσει ένα combobox control.

Προσθήκη αντικειμένων στο Combobox

Τώρα που δημιουργήσαμε ένα combobox, ας δείξουμε πώς να προσθέσουμε στοιχεία σε αυτό.

Double κάντε κλικ στο στοιχείο ελέγχου σύνθετου πλαισίου που έχετε προσθέσει. Θα μετακινηθείτε από την καρτέλα σχεδίαση στην καρτέλα με κώδικα.

Για να προσθέσουμε ένα στοιχείο σε ένα στοιχείο ελέγχου combobox, χρησιμοποιούμε την ιδιότητα Items. Ας το δείξουμε αυτό προσθέτοντας δύο στοιχεία στο σύνθετο πλαίσιο, Άνδρας και Θηλυκό:

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

Μπορούμε επίσης να επιλέξουμε να προσθέσουμε στοιχεία στο σύνθετο πλαίσιο κατά το χρόνο σχεδίασης από το παράθυρο Ιδιότητες. Εδώ είναι τα βήματα:

Βήμα 1) Ανοίξτε την καρτέλα σχεδίασης και κάντε κλικ στο στοιχείο ελέγχου σύνθετου πλαισίου.

Βήμα 2) Μεταβείτε στο παράθυρο Ιδιότητες και δείτε την επιλογή Στοιχεία.

Βήμα 3) Κάντε κλικ στο … που βρίσκεται στα δεξιά της (Συλλογής).

Προσθήκη στοιχείων σε ένα σύνθετο πλαίσιο VB.Net σε κώδικα με τη μέθοδο Items.Add

Παράθυρο ιδιοτήτων VB.Net που ανοίγει το σύνθετο πλαίσιο επεξεργασίας συλλογής στοιχείων

Βήμα 4) Θα δείτε ένα νέο παράθυρο. Εδώ θα πρέπει να προσθέσετε στοιχεία στο σύνθετο πλαίσιο, όπως φαίνεται παρακάτω:

Επεξεργαστής Συλλογής Συμβολοσειρών που παραθέτει στοιχεία συνδυαστικού πλαισίου για Άνδρες και Γυναίκες

Βήμα 5) Μόλις τελειώσετε με το typing τα στοιχεία, κάντε κλικ στο κουμπί OK.

Βήμα 6) Κάντε κλικ στο κουμπί Έναρξη από την επάνω γραμμή εργαλείων και κάντε κλικ στο αναπτυσσόμενο εικονίδιο στο σύνθετο πλαίσιο.

Σύνθετο πλαίσιο VB.Net που εμφανίζει το στοιχείο "Άνδρας" επιλεγμένο ως προεπιλεγμένο στοιχείο κατά τον χρόνο εκτέλεσης

Τα στοιχεία προστέθηκαν επιτυχώς στο στοιχείο ελέγχου combobox.

Επιλογή στοιχείων Combobox

Ίσως χρειαστεί να ορίσετε το προεπιλεγμένο στοιχείο που θα επιλεγεί κατά τη φόρτωση της φόρμας. Μπορείτε να το επιτύχετε αυτό μέσω της μεθόδου SelectedItem(). Για παράδειγμα, για να ορίσετε το προεπιλεγμένο φύλο σε Άνδρας, μπορείτε να χρησιμοποιήσετε την ακόλουθη δήλωση:

ComboBox1.SelectedItem = "Male"

Όταν εκτελείτε τον κώδικα, το στοιχείο ελέγχου combobox θα πρέπει να είναι όπως φαίνεται παρακάτω:

Φόρμα VB.Net που εμφανίζει το σύνθετο πλαίσιο με επιλογές Άνδρας και Γυναίκα

Ανάκτηση τιμών Combobox

Μπορείτε να λάβετε το επιλεγμένο στοιχείο από το σύνθετο πλαίσιο σας. Αυτό μπορεί να γίνει χρησιμοποιώντας την ιδιότητα κειμένου. Ας το δείξουμε αυτό χρησιμοποιώντας το παραπάνω σύνθετο πλαίσιο με δύο στοιχεία, δηλαδή, Άνδρας και Γυναίκα. Ακολουθήστε τα παρακάτω βήματα:

Βήμα 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) Κάντε κλικ στο κουμπί Έναρξη από τη γραμμή εργαλείων για να εκτελέσετε τον κώδικα. Θα πρέπει να λάβετε την ακόλουθη φόρμα:

Code στιγμιότυπο οθόνης του συνδυαστικού πλαισίου VB.Net, χειριστή συμβάντων SelectedIndexChanged

Βήμα 4) Κάντε κλικ στο αναπτυσσόμενο κουμπί και επιλέξτε το φύλο σας. Στην περίπτωσή μου, επιλέγω Άνδρας και λαμβάνω τα εξής:

Πλαίσιο μηνύματος VB.Net που εμφανίζει το επιλεγμένο στοιχείο συνδυαστικού πλαισίου με κείμενο Άνδρας

Εδώ είναι ένα στιγμιότυπο οθόνης του κώδικα:

Επεξήγηση του Code:

  1. Δημιουργία κλάσης με το όνομα Form1. Η κλάση θα είναι δημόσια προσβάσιμη αφού ο τροποποιητής πρόσβασής της έχει οριστεί σε Δημόσιο.
  2. Έναρξη μιας δευτερεύουσας διαδικασίας με το όνομα ComboBox1_SelectedIndexChanged. Αυτό δημιουργείται αυτόματα όταν κάνετε διπλό κλικ στο στοιχείο ελέγχου του combobox από την καρτέλα σχεδίασης. Αυτή η δευτερεύουσα διαδικασία θα ενεργοποιηθεί όταν επιλέξετε ένα στοιχείο από το combobox. Το sd As Object αναφέρεται στο αντικείμενο που έθεσε το συμβάν, ενώ το event As EventArgs περιέχει τα δεδομένα του συμβάντος.
  3. Δημιουργία μιας μεταβλητής συμβολοσειράς με όνομα var_gender.
  4. Ρύθμιση της τιμής της μεταβλητής var_gender στο στοιχείο που επιλέγεται στο σύνθετο πλαίσιο.
  5. Εκτύπωση της τιμής της μεταβλητής var_gender σε ένα μήνυμαBox.
  6. Τέλος του ComboBox1_SelectedIndexChanged υποδιαδικασία.
  7. Τέλος του μαθήματος Form1.

Αφαίρεση στοιχείων Combobox

Είναι δυνατό να αφαιρέσετε ένα αντικείμενο από το σύνθετο κουτί σας. Υπάρχουν δύο τρόποι μέσω των οποίων μπορείτε να το πετύχετε. Μπορείτε να χρησιμοποιήσετε είτε το ευρετήριο στοιχείου είτε το όνομα του αντικειμένου.

Όταν χρησιμοποιείτε το ευρετήριο στοιχείου, θα πρέπει να χρησιμοποιήσετε την ιδιότητα Items.RemoveAt() όπως φαίνεται παρακάτω:

ComboBox1.Items.RemoveAt(1)

Στο παραπάνω παράδειγμα, αφαιρούμε το στοιχείο που βρίσκεται στο ευρετήριο 1 του σύνθετου πλαισίου. Σημειώστε ότι τα ευρετήρια combobox ξεκινούν από το ευρετήριο 0, που σημαίνει ότι η παραπάνω εντολή θα αφαιρέσει το δεύτερο στοιχείο του combobox.

Για να αφαιρέσετε το στοιχείο χρησιμοποιώντας το όνομά του, θα πρέπει να χρησιμοποιήσετε την ιδιότητα Items.Remove() όπως φαίνεται παρακάτω:

ComboBox1.Items.Remove("Female")

Ο παραπάνω κωδικός θα πρέπει να αφαιρέσει το στοιχείο που ονομάζεται Female από το ComboBox1.

Δεσμευτική πηγή δεδομένων

Ένας συνδυασμόςBox μπορεί να συμπληρωθεί από ένα σύνολο δεδομένων. Εξετάστε το ερώτημα SQL που δίνεται παρακάτω:

select emp_id, emp_name from employees; 

Μπορείτε να δημιουργήσετε μια πηγή δεδομένων σε ένα πρόγραμμα και στη συνέχεια να χρησιμοποιήσετε τον ακόλουθο κώδικα για να τη δεσμεύσετε:

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

Αυτό θα σας προσφέρει έναν εύκολο τρόπο να συμπληρώσετε το στοιχείο ελέγχου σύνθετου κουτιού σας με δεδομένα χωρίς να χρειάζεται να πληκτρολογήσετε κάθε μεμονωμένο στοιχείο.

Συμβάν SelectedIndexChanged

Συχνά θα θέλετε το πρόγραμμά σας να αντιδρά τη στιγμή που ο χρήστης επιλέγει μια νέα τιμή.

Αυτός ο τύπος συμβάντος καλείται όταν αλλάζετε το επιλεγμένο στοιχείο στο σύνθετο κουτί σας. Είναι το συμβάν που πρέπει να χρησιμοποιήσετε όταν χρειάζεται να εφαρμόσετε μια ενέργεια μετά από μια αλλαγή στο επιλεγμένο στοιχείο ενός σύνθετου κουτιού. Ας το δείξουμε αυτό χρησιμοποιώντας ένα παράδειγμα:

Βήμα 1) Δημιουργήστε ένα νέο Windows Αίτηση για έντυπα.

Βήμα 2) Στη συνέχεια, πρέπει να σύρετε και να αποθέσετε δύο στοιχεία ελέγχου συνδυαστικού πλαισίου στη φόρμα.

Δύο στοιχεία ελέγχου combobox τοποθετημένα δίπλα-δίπλα σε ένα VB.Net Windows Μορφή

Βήμα 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) Κάντε κλικ στο κουμπί Έναρξη από την επάνω γραμμή για να εκτελέσετε τον κώδικα. Θα πρέπει να λάβετε το ακόλουθο αποτέλεσμα:

Πρώτο σύνθετο πλαίσιο που συμπληρώνεται με αρσενικά και θηλυκά στο Form_Load

Βήμα 5) Κάντε κλικ στο αναπτυσσόμενο κουμπί στο πρώτο σύνθετο πλαίσιο και επιλέξτε Άνδρας. Μετακινήστε τον κέρσορα του ποντικιού στο δεύτερο σύνθετο πλαίσιο και κάντε κλικ στο αναπτυσσόμενο κουμπί του. Δείτε τα διαθέσιμα στοιχεία:

Επιλέχθηκε το δεύτερο σύνθετο πλαίσιο που δείχνει τον Νικόλαο και τον Ιωάννη μετά τους Άνδρες

Βήμα 6) Μεταβείτε στο πρώτο σύνθετο πλαίσιο και επιλέξτε ΓυναίκαΜεταβείτε στο δεύτερο σύνθετο πλαίσιο και δείτε τα διαθέσιμα στοιχεία:

Επιλέχθηκε το δεύτερο combobox που δείχνει την Alice και την Grace μετά τις Female

Εδώ είναι ένα στιγμιότυπο οθόνης του κώδικα:

Code στιγμιότυπο οθόνης του χειριστή VB.Net SelectedIndexChanged με δύο συνδυασμούς

Επεξήγηση του Code:

  1. Δημιουργία κλάσης με το όνομα Form1.
  2. Έναρξη μιας δευτερεύουσας διαδικασίας με όνομα Form1_Load(). Αυτή θα ενεργοποιηθεί μόλις φορτωθεί η φόρμα. Το αντικείμενο sd As Object αναφέρεται στο αντικείμενο που έθεσε το συμβάν, ενώ το event As EventArgs περιέχει τα δεδομένα συμβάντος.
  3. Προσθήκη του αντικειμένου Αρσενικά στο ComboBox1.
  4. Προσθήκη του στοιχείου Females στο ComboBox1.
  5. Τέλος της υποδιαδικασίας Form1_Load().
  6. Έναρξη μιας υποδιαδικασίας που ονομάζεται ComboBox1_SelectedIndexChanged(). Αυτό θα γίνει επίκληση όταν επιλεγεί ένα στοιχείο στο πρώτο σύνθετο πλαίσιο. Ο αποστολέας ως αντικείμενο αναφέρεται στο αντικείμενο που ανέδειξε το συμβάν ενώ το e As EventArgs έχει τα δεδομένα συμβάντος.
  7. Κάντε ComboBox2 κενά, διαγράψτε όλα τα στοιχεία από αυτό.
  8. Δημιουργία συνθήκης. Έλεγχος για το αν το επιλεγμένο στοιχείο στο ComboBox1 είναι Αρσενικά.
  9. Προσθέστε το στοιχείο Nicholas στο ComboBox2 όταν ισχύει η παραπάνω συνθήκη, δηλαδή το στοιχείο επιλεγμένο στο ComboBox1 είναι Άνδρας.
  10. Προσθέστε το στοιχείο John στο ComboBox2 όταν ισχύει η παραπάνω συνθήκη, δηλαδή το στοιχείο επιλεγμένο στο ComboBox1 είναι Αρσενικά.
  11. Δημιουργία συνθήκης. Έλεγχος για το αν το επιλεγμένο στοιχείο στο ComboBox1 είναι Γυναίκες.
  12. Προσθέστε το στοιχείο Alice στο ComboBox2 όταν ισχύει η παραπάνω συνθήκη, δηλαδή το στοιχείο επιλεγμένο στο ComboBox1 είναι Γυναίκες.
  13. Προσθέστε το στοιχείο Grace στο ComboBox2 όταν ισχύει η παραπάνω συνθήκη, δηλαδή το στοιχείο επιλεγμένο στο ComboBox1 είναι Γυναίκες.
  14. Τέλος του μπλοκ If.
  15. Τέλος του ComboBoxΥποδιαδικασία 1_SelectedIndexChanged().
  16. Τέλος μαθήματος Έντυπο 1.

Συχνές Ερωτήσεις

Ένας συνδυασμόςBox εξοικονομεί χώρο αποκρύπτοντας τη λίστα μέχρι να κάνετε κλικ στο βέλος και μπορεί να δεχτεί πληκτρολογημένη εισαγωγή. Μια λίσταBox Εμφανίζει όλα τα στοιχεία ταυτόχρονα και επιτρέπει μόνο την επιλογή.

Το DropDownStyle επιλέγει τη συμπεριφορά: Το DropDown (προεπιλογή) επιτρέπει στον χρήστη να πληκτρολογεί ελεύθερο κείμενο. Το DropDownList περιορίζει την εισαγωγή σε στοιχεία της λίστας. Το Simple διατηρεί τη λίστα ανοιχτή ανά πάσα στιγμή.

Η συνάρτηση SelectedIndex επιστρέφει τη θέση που βασίζεται στο μηδέν, η συνάρτηση SelectedItem επιστρέφει το αντικείμενο που είναι συνδεδεμένο με αυτήν τη γραμμή και η συνάρτηση Text επιστρέφει τη συμβολοσειρά στο πλαίσιο επεξεργασίας, συμπεριλαμβανομένου του κειμένου που πληκτρολόγησε ο χρήστης.

Συνδυασμός κλήσεωνBox1.Items.Clear() για να αδειάσετε τη λίστα. Για να επαναφέρετε επίσης το κείμενο που εμφανίζεται στο πλαίσιο επεξεργασίας, ακολουθήστε το με ComboBox1.SelectedIndex = -1 ή ορισμός ComboBox1.Κείμενο = Κενό.Συμβολοσειρά.

Ορίστε την ιδιότητα DropDownStyle σε DropDownList στο παράθυρο Ιδιότητες ή στον κώδικα (ComboBox1.DropDownStyle = ΣυνδυασμόςBoxStyle.DropDownList). Ο χρήστης μπορεί στη συνέχεια να επιλέξει μόνο στοιχεία που βρίσκονται ήδη στη λίστα.

Η συνάρτηση TextChanged ενεργοποιείται ενώ ο χρήστης επεξεργάζεται το τμήμα του πλαισίου κειμένου. Η συνάρτηση SelectedIndexChanged ενεργοποιείται μόνο όταν αλλάξει το επισημασμένο στοιχείο στην αναπτυσσόμενη λίστα, είτε με ποντίκι, πληκτρολόγιο είτε με κώδικα.

Ναί. GitHub Copilot μετατρέπει ένα σχόλιο σε απλά αγγλικά σε ένα πλήρες μπλοκ SelectedIndexChanged ή DataBindings. Να ελέγχετε πάντα τον δημιουργημένο κώδικα πριν από την αποστολή.ping.

Ναι. Το Visual Studio 2026 συνδέει το Copilot με το ΊντελιCode για ολοκληρωμένες, προσαρμοσμένες στο περιβάλλον, ολοκληρωμένες λύσεις ComboBox ιδιότητες και γεγονότα.

Συνοψίστε αυτήν την ανάρτηση με: