Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 | Suche | FAQ

Hauptmenü
myCSharp.de
» Startseite
» Forum
» Suche
» Regeln
» Wie poste ich richtig?

Mitglieder
» Liste / Suche
» Wer ist online?

Ressourcen
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Microsoft Docs

Team
» Kontakt
» Cookies
» Spenden
» Datenschutz
» Impressum

  • »
  • Community
  • |
  • Diskussionsforum
TreeView Lazy Loading mit Databinding
knatterton
myCSharp.de - Member

Avatar #avatar-2647.jpg


Dabei seit:
Beiträge: 101

Themenstarter:

TreeView Lazy Loading mit Databinding

beantworten | zitieren | melden

Hallo
Ich versuche schon etwas länger einen TreeView zu erstellen mit dem das Lazy Loading funktioniert. Habe mir dazu auch schon ein paar Beispiele angeschaut aber da war irgendwie nicht das richtige dabei. Bisher ist mir immer nur die Variante mit dem foreach geblieben. Aber WPF bietet mir ja eigentlich auch die Möglichkeit des TwoWay Databindings. Also wenn ich zwei Trees mit der selben Datenquelle habe und dann wird in dem einem Tree etwas gelöscht oder hinzugefügt wird es in dem anderen Tree automatisch aktualisiert. Kann mir da jemand helfen wie ich das Umsetzen kann? Ich bräuchte über das hinaus auch noch ein Template für meine TreeViewItems weil ich viele DependencyProperties habe ich ich pro Item ansteuern muss. Ich habe bereits ein ControlTemplate angelegt nur befürchte ich, dass ich das wegschmeißen kann. Als Datenquelle bekomme ich pro Knoten immer eine flache Collection.
Kombiniere: ...
private Nachricht | Beiträge des Benutzers
schaedld
myCSharp.de - Member

Avatar #avatar-2533.jpg


Dabei seit:
Beiträge: 1.433
Herkunft: Schweiz

beantworten | zitieren | melden

ObservableCollection kannst Du verwenden, wenn die Datenquelle ihre Änderungen ans GUI weitergeben soll.
Grüsse
Daniel
Space Profile
Wer nicht fragt, der nicht gewinnt
private Nachricht | Beiträge des Benutzers
knatterton
myCSharp.de - Member

Avatar #avatar-2647.jpg


Dabei seit:
Beiträge: 101

Themenstarter:

beantworten | zitieren | melden

Das Problem ist nicht die Collection sondern der Aufbau des Trees mit seinen Templates, Databinding und LazyLoading.
Kombiniere: ...
private Nachricht | Beiträge des Benutzers
winSharp93
myCSharp.de - Experte

Avatar #avatar-2918.png


Dabei seit:
Beiträge: 5.742
Herkunft: Stuttgart

beantworten | zitieren | melden

Hallo knatterton,

ich habe so etwas schon einmal in WPF TreeView gepostet.
Aber Achtung: Da war ich noch relativ unerfahren im Umgang mit der WPF (den DataTemplateSelector braucht man z.B. gar nicht).
private Nachricht | Beiträge des Benutzers
knatterton
myCSharp.de - Member

Avatar #avatar-2647.jpg


Dabei seit:
Beiträge: 101

Themenstarter:

beantworten | zitieren | melden

Hi
Hmm das Beispiel sieht mir aber auch so aus als würden die Items mit Add hinzugefügt werden.
Kombiniere: ...
private Nachricht | Beiträge des Benutzers
winSharp93
myCSharp.de - Experte

Avatar #avatar-2918.png


Dabei seit:
Beiträge: 5.742
Herkunft: Stuttgart

beantworten | zitieren | melden

Zitat von knatterton
Hmm das Beispiel sieht mir aber auch so aus als würden die Items mit Add hinzugefügt werden.
Ähm: Du hast nach unten gescrollt und meine Antwort gelesen?!?
Dort verwende ich Add nur für das erste Element. Und das nur, um (für das Posting irrelevanten) Code zu sparen.
private Nachricht | Beiträge des Benutzers
knatterton
myCSharp.de - Member

Avatar #avatar-2647.jpg


Dabei seit:
Beiträge: 101

Themenstarter:

beantworten | zitieren | melden

Ich denke für die Anzahl der Anforderungen die ich an meinen Tree habe werde ich vermutlich auch mit einem HierarchicalDataTemplate nicht weiter kommen. Es ist ja so, dass ich die ganzen Typen die die Items benötigen um ein Binding an die Elemente machen zu können vorher bekannt sein sollten. Das ist noch nicht klar. Und auch der Baum wird immer dynamisch und unterschiedlich aufgebaut sein. Einen TemplateSelector würde ich schon brauchen. Aber das mit den Templates ist glaube ich zu aufwändig. Mein Tree wird auch auch schon aufgebaut und das PropertyChanged funktioniert auch. Nun muss nur noch das CollectionChanged eine Lösung gefunden werden und dann sollte erstmal der weiteren Entwicklung nichts mehr im Wege stehen. Danke für die Anwort. Die ultimative Lösung für alle meine Anforderungen wird es wohl nicht geben. Aber es hätte ja sein können das ich im Netz was finde ;)
Kombiniere: ...
private Nachricht | Beiträge des Benutzers