ComboBox w WPF

Słownik kwalifikacji INF.04 - Projektowanie, programowanie i testowanie aplikacji

ComboBox to kontrolka WPF służąca do tworzenia listy rozwijanej. Użytkownik może wybrać jeden element z dostępnych opcji. Kontrolka jest często używana w formularzach, np. do wyboru kategorii, miasta, typu konta lub ustawienia aplikacji.

Przykład w XAML

<ComboBox SelectionChanged="ComboBox_SelectionChanged">
    <ComboBoxItem Content="Opcja 1" />
    <ComboBoxItem Content="Opcja 2" />
    <ComboBoxItem Content="Opcja 3" />
</ComboBox>

W tym przykładzie lista zawiera trzy elementy. Po zmianie wyboru zostanie wywołana metoda ComboBox_SelectionChanged.

Obsługa wyboru w C

private void ComboBox_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
    MessageBox.Show("Zmieniono wybór");
}

Zdarzenie SelectionChanged występuje wtedy, gdy zmieni się aktualnie zaznaczony element listy.

Ważne właściwości

  • SelectedItem — zwraca aktualnie wybrany element,
  • SelectedIndex — zwraca indeks wybranego elementu, liczony od 0,
  • Items — kolekcja elementów znajdujących się na liście,
  • IsDropDownOpen — określa, czy lista jest rozwinięta.

Typowy błąd

Nie należy mylić wyboru elementu z innymi zdarzeniami kontrolki. KeyDown dotyczy klawiatury, LostFocus utraty aktywności kontrolki, a DragEnter przeciągania obiektów. Sam wybór pozycji z listy ComboBox jest obsługiwany przez SelectionChanged.