Optionsgruppe an Boolean binden

Lies in den Artikel rein und unten bekommst Du ein unschlagbares Angebot!

Im Artikel “Optionsgruppen mit GroupBox und RadioButtons” haben Sie erfahren, wie Sie Optionsgruppen mit dem GroupBox-Steuerelement und RadioButton-Steuerelementen nachbilden. In diesem Artikel haben wir uns noch nicht darum gekümmert, diesen Optionsgruppen-Nachbau an Daten zu binden – sprich beispielsweise an eine Eigenschaft im Code behind-Modul des Fensters mit der Optionsgruppe. Da dies nicht so trivial ist wie das Binden von Steuerelementen wie TextBox oder anderen, widmen wir diesem Thema einen eigenen Artikel.

GroupBox-Element an Daten binden

In unserem Beispiel wollen wir ein Boolean-Feld eines Objekts wie in diesem Fall das Feld Newsletter, das angibt, ob ein Kunde den Newsletter erhalten soll, an zwei GroupBox-Elemente binden. Dazu erstellen wir im Code behind-Modul des Fensters MainWindow.xaml ein Kunde-Objekt mit wenigen Eigenschaften und weisen es der Eigenschaft Kunde des Moduls zu:

Public Property Kunde As Kunde
Public Sub New()
     InitializeComponent()
     DataContext = Me
     _Kunde = New Kunde() With {.ID = 1, .Vorname = "Adi", .Nachname = "Stratmann", .Newsletter = False}
End Sub

Das Fenster definieren wir im XAML-Code so, dass es zwei RadioButton-Elemente zur Anzeige des Boolean-Feldes Newsletter nutzt. Damit nur eines davon markiert ist, fassen wir die RadioButton-Elemente durch Vergabe des gleichen Wertes NewsletterGroup für das Attribut GroupName zusammen (siehe Bild 1). Für die Bindung nutzen wir das Attribut IsChecked. Dieses binden für wir das Ja-Feld einfach an die Eigenschaft Kunde.Newsletter. Für das Nein-Feld müssen wir es allerdings einen ValueConverter hinzunehmen:

Wert der Eigenschaft auslesen

Möchten Sie weiterlesen? Dann lösen Sie Ihr Ticket!
Hier geht es zur Bestellung des Jahresabonnements des Magazins Visual Basic Entwickler:
Zur Bestellung ...
Danach greifen Sie sofort auf alle rund 200 Artikel unseres Angebots zu - auch auf diesen hier!
Oder haben Sie bereits Zugangsdaten? Dann loggen Sie sich gleich hier ein:

 

Schreibe einen Kommentar