2016-12-16 5 views
0

ich einen ComboBox zu gebunden habe meine TextBoxBind mehrfach Comboboxen zu einem TextBox

<TextBlock Grid.Row="1" Name="DescriptionText" Text="{Binding ElementName=ScreenLocations, Path=SelectedItem.Description}" /> 

Ich habe 4 Comboboxen in meinem Netz. Was ich tun möchte, ist, jedes Mal, wenn ich einen Artikel aus einem ComboBox auswählen, aktualisieren Sie die TextBox mit den ausgewählten Objekten Description Eigenschaft.

Ist es möglich, mehrere ComboBoxen an eine TextBox zu binden, oder müsste ich ein Ereignis irgendeiner Art verwenden?

+0

Wenn Sie ein bisschen mehr Details hinzugefügt haben, wäre es einfacher für Menschen, Ihnen zu helfen. http://stackoverflow.com/help/mcve –

Antwort

1

Erstellen Sie eine Eigenschaft in Ihrem ViewModel und binden Sie alle 'comboboxes' 'selectedItem' -Eigenschaft daran (Use Mode = "OneWayToSource", dies wird verhindern, dass Änderungen an selectedItem einer ComboBox die andere beeinflussen), binden Sie dann Ihre TextBox an dieselbe Eigenschaft, die in der VM mit Mode = "OneWay" erstellt wurde. Vergessen Sie nicht, INotifyPropertyChanged in Ihrer VM zu implementieren.

+0

Ich bin nicht 100% wie zu implementieren. Welcher Typ sollte diese Eigenschaft sein? Schnur? Und wird diese Eigenschaft auf den ausgewählten Artikel aktualisiert, so dass die Beschreibung des Artikels angezeigt wird? Auch, wenn diese Artikel in den ComboBoxen unterschiedlich sind, wird das irgendwas bewirken? Ich bin noch neu in diesem Bereich. –

+0

Die Eigenschaft sollte vom gleichen Typ sein wie Ihre Combobox-Elemente (ich nehme an, dass alle Ihre Combobox-Elemente vom selben Typ sind, wenn Sie keine Elternklasse erstellen und alle Klassen Ihrer Elemente von ihr erben lassen). – Berchmans