Einzelnen Beitrag anzeigen

Benutzerbild von Stevie
Stevie

Registriert seit: 12. Aug 2003
Ort: Soest
4.016 Beiträge
 
Delphi 10.1 Berlin Enterprise
 
#2

AW: Databinding - Grundsatzdiskussion

  Alt 7. Jan 2013, 13:59
Wenn du z.B. den Virtual TreeView und den TreeViewPresenter benutzt, dann wird dir eine Liste mit 100000 Elementen in *fingerschnips* angezeigt (BeginUpdate/EndUpdate vorrausgesetzt, sollte die Liste beim Befüllen schon am Presenter hängen, da sonst für jedes Hinzufügen ein Event gefeuert wird, was dann "etwas" langsam werden kann - wir reden hier von Bereichen jenseits einiger Minuten).

Hängst du diese Liste an ein TStringGrid (was ja mit DSharp auch über ein CollectionView verfügt, wo du ItemsSource angeben kannst), dann wirds aber langsam, da dort dann pro Element die Texte in die entsprechenden Zellen kopiert werden. Geht vermutlich auch besser, denn TDBGrid kann das ja auch, da hab ich aber keine Resourcen reingesteckt - warum sollte man TStringGrid benutzen, wenn man was viel besseres benutzen kann (für viele Daten wohlgemerkt).

Und genau da liegt auch bei den LB der Hund begraben, über die entsprechenden Bind Expressions wird gesagt, dass der Text aus den Properties in die Cells gepackt werden soll und das wird dann für alle 100000 Elemente in der Liste gemacht, egal ob nur 10 sichtbar sind, wenn das Form aufgeht.
Stefan
“Simplicity, carried to the extreme, becomes elegance.” Jon Franklin

Delphi Sorcery - DSharp - Spring4D - TestInsight

Geändert von Stevie ( 7. Jan 2013 um 14:05 Uhr)
  Mit Zitat antworten Zitat