Kombinacja VB.NetBox Kontrola z PRZYKŁADEM
⚡ Inteligentne podsumowanie
ComboBox w VB.Net jest Windows Kontrolka formularza łącząca pole tekstowe z listą rozwijaną, umożliwiająca użytkownikowi wybranie pojedynczego elementu lub wpisanie go, oszczędzając w ten sposób miejsce w formularzu.

Czym jest kontrolka Combobox?
Kontrolka combobox pomaga wyświetlić listę rozwijaną z wieloma elementami. Zobacz ją jako kombinację pola tekstowego, w którym użytkownik wprowadza tekst i listy rozwijanej, z której użytkownik wybiera element. Zwróć uwagę, że combobox wyświetla jeden element na raz.
Tworzenie pola kombi
KombinacjaBox można utworzyć w następujący sposób:
Krok 1) Utwórz nową aplikację.
Krok 2) Przeciągnij kontrolkę pola kombi z przybornika do formularza.
Utworzyłeś kontrolkę pola kombi.
Dodawanie elementów do pola kombi
Teraz, gdy utworzyliśmy pole kombi, pokażemy, jak dodawać do niego elementy.
Double kliknij kontrolkę combobox, którą dodałeś. Zostaniesz przeniesiony z zakładki design do zakładki z kodem.
Aby dodać element do kontrolki combobox, używamy właściwości Items. Pokażmy to, dodając dwa elementy do combobox, Male i Female:
ComboBox1.Items.Add("Male") ComboBox1.Items.Add("Female")
Możemy również wybrać dodanie elementów do pola kombi w czasie projektowania z okna Właściwości. Oto kroki:
Krok 1) Otwórz kartę projektowania i kliknij kontrolkę pola kombi.
Krok 2) Przejdź do okna Właściwości i wyświetl opcję Elementy.
Krok 3) Kliknij … znajdujący się po prawej stronie (Kolekcja).
Krok 4) Zobaczysz nowe okno. W tym miejscu należy dodać elementy do pola kombi, jak pokazano poniżej:
Krok 5) Po zakończeniu pracy z typing elementy, kliknij przycisk OK.
Krok 6) Kliknij przycisk Start na górnym pasku narzędzi i kliknij ikonę rozwijaną w polu rozwijanym.
Elementy zostały pomyślnie dodane do kontrolki combobox.
Wybieranie elementów pola kombi
Może być konieczne ustawienie domyślnego elementu, który zostanie wybrany po załadowaniu formularza. Można to osiągnąć za pomocą metody SelectedItem(). Na przykład, aby ustawić domyślną wybraną płeć na Male, można użyć następującego polecenia:
ComboBox1.SelectedItem = "Male"
Po uruchomieniu kodu kontrolka combobox powinna wyglądać tak, jak pokazano poniżej:
Pobieranie wartości pola kombi
Możesz pobrać wybrany element z pola kombi. Można to zrobić za pomocą właściwości tekstu. Zademonstrujmy to na przykładzie naszego pola kombi z dwoma elementami, czyli „Mężczyzna” i „Kobieta”. Wykonaj poniższe kroki:
Krok 1) Double Kliknij pole wyboru, aby otworzyć kartę z kodem VB.Net.
Krok 2) Dodaj następujący kod:
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
Krok 3) Kliknij przycisk Start na pasku narzędzi, aby wykonać kod. Powinien pojawić się następujący formularz:
Krok 4) Kliknij przycisk rozwijany i wybierz swoją płeć. W moim przypadku wybieram „Mężczyzna” i otrzymuję następujące informacje:
Oto zrzut ekranu kodu:
Wyjaśnienie Code:
- Tworzenie klasy o nazwie Form1. Klasa będzie dostępna publicznie, ponieważ jej modyfikator dostępu został ustawiony na Publiczny.
- Uruchamianie podprocedury o nazwie ComboBox1_SelectedIndexChanged. Jest generowany automatycznie po dwukrotnym kliknięciu kontrolki pola kombi na karcie projektowania. Ta podprocedura zostanie wywołana po wybraniu elementu z pola kombi. Obiekt sd As odwołuje się do obiektu, który wywołał zdarzenie, natomiast evnt As EventArgs przechowuje dane zdarzenia.
- Tworzenie zmiennej typu String o nazwie var_gender.
- Ustawienie wartości zmiennej var_gender na element wybrany w polu kombi.
- Wydruk wartości zmiennej var_gender w komunikacieBox.
- Koniec KombinacjiBox1_SelectedIndexChanged podprocedura.
- Koniec klasy Form1.
Usuwanie elementów pola kombi
Możesz usunąć element z pola kombi. Istnieją dwa sposoby, aby to zrobić. Możesz użyć indeksu elementu lub nazwy elementu.
Korzystając z indeksu pozycji, należy użyć właściwości Items.RemoveAt() jak pokazano poniżej:
ComboBox1.Items.RemoveAt(1)
W powyższym przykładzie usuwamy element znajdujący się pod indeksem 1 pola kombi. Należy zauważyć, że indeksy pól kombi zaczynają się od indeksu 0, co oznacza, że powyższe polecenie usunie drugi element pola kombi.
Aby usunąć element używając jego nazwy, należy użyć właściwości Items.Remove() jak pokazano poniżej:
ComboBox1.Items.Remove("Female")
Powyższy kod powinien usunąć element o nazwie Kobieta z ComboBox1.
Powiązanie źródła danych
KombinacjaBox można wypełnić ze zbioru danych. Rozważmy zapytanie SQL podane poniżej:
select emp_id, emp_name from employees;
Możesz utworzyć źródło danych w programie, a następnie użyć następującego kodu, aby je powiązać:
comboBox1.DataSource = ds.Tables(0) comboBox1.ValueMember = "emp_id" comboBox1.DisplayMember = "emp_name"
Dzięki temu będziesz mieć łatwy sposób na wypełnienie kontrolki pola kombi danymi, bez konieczności wpisywania każdego elementu z osobna.
Zdarzenie SelectedIndexChanged
Często chcesz, aby Twój program reagował w momencie, gdy użytkownik wybierze nową wartość.
Ten typ zdarzenia jest wywoływany, gdy zmieniasz wybrany element w swoim polu kombi. Jest to zdarzenie, którego powinieneś użyć, gdy musisz wdrożyć akcję po zmianie wybranego elementu pola kombi. Zademonstrujmy to na przykładzie:
Krok 1) Utwórz nowy Windows Formularze aplikacji.
Krok 2) Następnie należy przeciągnąć i upuścić dwa kontrolki typu combobox do formularza.
Krok 3) Double kliknij wewnątrz formularza, aby otworzyć zakładkę kodu. Wprowadź następujący kod:
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
Krok 4) Kliknij przycisk Start na górnym pasku, aby uruchomić kod. Powinieneś otrzymać następujący wynik:
Krok 5) Kliknij przycisk rozwijany w pierwszym polu kombi i wybierz opcję Mężczyzna. Przesuń kursor myszy na drugie pole kombi i kliknij przycisk rozwijany. Zobacz dostępne pozycje:
Krok 6) Przejdź do pierwszego pola wyboru i wybierz KobietaPrzejdź do drugiego pola kombi i zobacz dostępne elementy:
Oto zrzut ekranu kodu:
Wyjaśnienie Code:
- Tworzenie klasy o nazwie Form1.
- Rozpoczęcie podprocedury o nazwie Form1_Load(). Zostanie ona uruchomiona po załadowaniu formularza. Obiekt sd As odwołuje się do obiektu, który wywołał zdarzenie, natomiast obiekt evnt As EventArgs przechowuje dane zdarzenia.
- Dodanie elementu Male do ComboBox1.
- Dodanie przedmiotu Kobiety do ComboBox1.
- Koniec podprocedury Form1_Load().
- Rozpoczęcie podprocedury o nazwie ComboBox1_SelectedIndexChanged(). Zostanie wywołane, gdy element zostanie wybrany w pierwszym polu kombi. Nadawca As Object odwołuje się do obiektu, który wywołał zdarzenie, podczas gdy e As EventArgs ma dane zdarzenia.
- Zrób kombinacjęBox2 pusty, usuń z niego wszystkie elementy.
- Tworzenie warunku. Sprawdzanie, czy wybrany element na ComboBox1 to mężczyźni.
- Dodaj element Nicholas do ComboBox2, gdy powyższy warunek jest spełniony, czyli element wybrany w ComboBox1 to mężczyzna.
- Dodaj element John do ComboBox2, gdy powyższy warunek jest spełniony, czyli element wybrany w ComboBox1 to mężczyźni.
- Tworzenie warunku. Sprawdzanie, czy wybrany element na ComboBox1 to kobiety.
- Dodaj element Alice do ComboBox2, gdy powyższy warunek jest spełniony, czyli element wybrany w ComboBox1 to kobiety.
- Dodaj element Grace do ComboBox2, gdy powyższy warunek jest spełniony, czyli element wybrany w ComboBox1 to kobiety.
- Koniec bloku If.
- Koniec KombinacjiBoxPodprocedura 1_SelectedIndexChanged().
- Zakończenie zajęć Forma 1.













