Ich möchte eine Instanz anzeigen, die der Benutzer mithilfe einer Combobox auswählen kann. Die Combobox erhält alle Einträge von einer ObservableCollection<string> Names {get;set;}
mit einer Bindung.Instanz des Objekts, um es zu binden und zu manipulieren?
Wie können Sie alle Eigenschaften dieser Instanz am besten mit einer Bindung anzeigen?
Meine Idee war es, eine ObservableCollection<Foo> Bar {get;set;}
zu erstellen. Nun wurde der Benutzer beim Eintritt in die Combobox ausgewählt. Mit dem gewählten Namen suche ich die Instanz mit diesem Namen in ObservableCollection<Foo> Bar {get;set;}
und kopiere sie in eine neue Instanz Foo TMPBar {get;set;}
. Und diese Instanz sollte an die GUI gebunden werden.
Ist das eine gute Lösung?
Verwenden Sie einfach die 'SelectedItem' -Eigenschaft der ComboBox. Es gibt bereits die ausgewählte 'Foo'-Instanz zurück. Keine Notwendigkeit, etwas zu kopieren. – Clemens
@Clemens Das Problem ist, die ComboBox zeigt nur die Namen - von einer 'ObservableCollection'. Innerhalb dieser 'OberservableCollection' sind nur Namen. Nachdem ich einen Namen gewählt habe, suche ich die richtige Instanz innerhalb von 'ObservableCollection Bar {get; set;} '. Ist das der richtige Weg? –
MyNewName
Binden Sie die 'ItemsSource' der ComboBox an eine' ObservableCollection 'und setzen Sie ihren' DisplayMemberPath' auf die entsprechende Namenseigenschaft Ihrer Foo-Klasse. –
Clemens