Laden...

DataGrid: Wenn sich ein Wert ändert, soll sich die Source aktualisieren

Erstellt von Kingkook vor 11 Jahren Letzter Beitrag vor 11 Jahren 1.498 Views
K
Kingkook Themenstarter:in
69 Beiträge seit 2011
vor 11 Jahren
DataGrid: Wenn sich ein Wert ändert, soll sich die Source aktualisieren

Liebe Com,

ich bin noch unerfahren auf im WPF-Umfeld, bei WinForms war das irgendwie einfacher 😃.

Ich habe ein DataGrid mit einem Textfeld und einer ComboBox. Ich will lediglich, dass wenn der Benutzer in der ComboBox eine Haken setzt oder entfernt, dass die gebundene Collection den entsprechenden Wert auch ändert. Aber leider tut sie weder das, noch ändert das Grid irgendwas.Immer wenn ich was anklicke wird die Row nur markiert ( und jede weitere in der ich was ändere). An der Source ändert sich aber nichts.Wenn ich dann zB die Spalten sortiere per klick auf einen Header, dann sind die Markierungen weg, die veränderten Werte auch und ich muss neu anfangen ( dann markiert er aber auch nicht mehr blau sondern setzt den Haken gleich)...

Kann mir das mal einer erklären, was zu tun ist, um einfach immer wenn sich ein Wert ändert ein Event zu erhalten, um die Source zu updaten?

Gruß Kooki

16.835 Beiträge seit 2008
vor 11 Jahren

Bei WPF macht man das nicht mehr per Events, sondern per Binding.

D
615 Beiträge seit 2009
vor 11 Jahren

Hallo Kingkook

ich bin noch unerfahren auf im WPF-Umfeld, bei WinForms war das irgendwie einfacher 😃.

Ich denke nach ein wenig Einarbeitungszeit, wirst du bald das Gegenteil behaupten 😃

Kann mir das mal einer erklären, was zu tun ist, um einfach immer wenn sich ein Wert ändert ein Event zu erhalten, um die Source zu updaten?

Schau dir DataBinding an.

DataGrid & ComboBox

Beste Grüsse

Diräkt

6.911 Beiträge seit 2009
vor 11 Jahren

Hallo Kingkook,

noch besser bist du dran wenn du dir Das Model-View-ViewModel (MVVM) Entwurfsmuster für WPF anschaust. Der Kern der Sache ist Bindung (wurde schon erwähnt) und dass die Klassen INotifyPropertyChanged implementieren.

mfG Gü

Stellt fachliche Fragen bitte im Forum, damit von den Antworten alle profitieren. Daher beantworte ich solche Fragen nicht per PM.

"Alle sagten, das geht nicht! Dann kam einer, der wusste das nicht - und hat's gemacht!"