WPF-ListView: Nur Daten von sichtbaren Items aktualisieren

20/03/2009 - 13:30 von Jochen Kalmbach [MVP] | Report spam
Hallo,

mal wieder eine Dumme Frage:

Ich habe eine ListView, welche ca. 2000 Elemente enthàlt (was ja nicht
viel ist). Alle (Data-)Items dafür sind auch schon angelegt und via
"ItemsSource" verbunden.

Jetzt hab ich das Problem, dass ich wissen muss, *welche* Items gerade
sichtbar sind. Für diese Items muss ich dann eine "spezielle" Verbinding
mit der Buisness-Logik aufbauen und mit stàndig über den Status
informieren lassen, welches sich dann in dem Data-Item wiederspiegelt.

Ich habe jetzt nur noch keinen Weg gefunden, dieses
"Data-Virtualization" zu implementieren.
Mir fehlt das Ereigniss, wann sich die Liste der "Sichtbaren Items"
geàndert hat, damit ich dann darauf die alten Verbindungen abbauen und
die neuen Aufbauen kann...

Kann mir da jemand ein Tipp geben?

(Seufz: Mit WinForms war halt alles einfacher...)


Danke!

Greetings
Jochen

My blog about Win32 and .NET
http://blog.kalmbachnet.de/
 

Lesen sie die antworten

#1 Jochen Kalmbach [MVP]
20/03/2009 - 20:23 | Warnen spam
Hallo!
Jochen Kalmbach [MVP] schrieb:

Jetzt hab ich das Problem, dass ich wissen muss, *welche* Items gerade
sichtbar sind. Für diese Items muss ich dann eine "spezielle" Verbinding
mit der Buisness-Logik aufbauen und mit stàndig über den Status
informieren lassen, welches sich dann in dem Data-Item wiederspiegelt.



Es scheint so, also müsste ich von VirtualizingStackPanel ableiten und
OnItemsChanged, OnViewportSizeChanged, OnViewportOffsetChanged
überschreiben.

Jetzt hab ich nur noch das Problem, dass ich es bisher noch nicht
geschafft habe aus dem VirtualizingStackPanel irgendwie die ListView
bzw. die ItemListe zu erreichen...

Wie kommt man zu der ItemsSource?

Vielen Dank für irgendwelche Hinweise...

Greetings
Jochen

My blog about Win32 and .NET
http://blog.kalmbachnet.de/

Ähnliche fragen