Laden...

WPF Databinding an List<T>

Erstellt von Grumbler85 vor 13 Jahren Letzter Beitrag vor 13 Jahren 821 Views
G
Grumbler85 Themenstarter:in
538 Beiträge seit 2008
vor 13 Jahren
WPF Databinding an List<T>

Hallo,

also entweder steh' ich aktuell ein wenig auf dem Schlauch oder ich bin einfach Blind oder es ist wirklich schlecht zu finden ...

Ich versuche in einer WPF Anwendung ein Datagrid an Objekte aus einer Liste zu binden - ich möchte für jedes Listenelement eine Zeile und für einige Listen-Properties eine Spalte.

Da meine bisherigen Versuche einfach ins nichts laufen - hat vielleicht jemand eine einfache, sinnvolle Erklärung wo was getan werden muss, um die Bindung zu erstellen?

Vielen dank im Voraus und mit besten Grüßen

Der Vorteil der Klugheit liegt darin, dass man sich dumm stellen kann - umgekehrt ist das schon schwieriger (K. Tucholsky)
Das Problem mit Internet-Zitaten ist, dass sie oftmals zu unrecht als authentisch angenommen werden. (K. Adenauer)

6.911 Beiträge seit 2009
vor 13 Jahren

Hallo,

schau dir mal Databinding Overvier - Binding to Collection an.

Sonst zeig mal den Code wo du hängst.

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!"

1.044 Beiträge seit 2008
vor 13 Jahren

Hallo Grumbler85,

verwende statt List<T> lieber ObservableCollection<T>. Der Grund ist, dass wenn sich Daten ändern, also Daten gelöscht oder hinzugefügt werden, diese nicht automatisch auf der Oberfläche aktualisiert werden. Dann bindest du deine Daten. Wie das genau geht, hat dir gfoidl schon gesagt.

zero_x

G
Grumbler85 Themenstarter:in
538 Beiträge seit 2008
vor 13 Jahren

Uff - gut das mit der ObservableCollection muss man wissen (mir war zum Beispiel nicht klar, dass das spätere setzen der Quelle per:


System.Windows.Data.CollectionViewSource applicationDataViewSource = ((System.Windows.Data.CollectionViewSource)(this.FindResource("applicationDataViewSource")));
                        applicationDataViewSource.Source = Applications;

nichts bringt ...

Danke soweit schon mal
Meine Zuordnung der Datenquelle konnte ich netterweise auch per Drag'n'Drop machen, wie mir ein Video eben gezeigt hat (da hätte man drauf kommen können)

Was ich nun eigentlich noch möchte ist den Teil hier oben entfernen und durch einen Binding Parameter (im zweifelsfall nur zu Übungszwecken) ersetzen also iwas wie {Binding Source=this.Applications} oder ist das nicht drin?

Applications ist im übrigen ein public ObservableCollection<CustomType>

Der Vorteil der Klugheit liegt darin, dass man sich dumm stellen kann - umgekehrt ist das schon schwieriger (K. Tucholsky)
Das Problem mit Internet-Zitaten ist, dass sie oftmals zu unrecht als authentisch angenommen werden. (K. Adenauer)