Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   C# listView zu langsam? (https://www.delphipraxis.net/53452-listview-zu-langsam.html)

faux 16. Sep 2005 22:18


listView zu langsam?
 
Hallo!

Ich will 100.000 bis 1.000.000 Einträge in eine listView eintragen. Die Werte habe ich berechnet und sind in einem Array des Typen ListViewItem. Ich weise dann die listView mittels Items.AddRange an, diesen Array einzufügen. Jedoch dauert dies aus verständlichen Gründen bis zu 2 Minuten. In dieser Zeit ist die Form nicht ansprechbar.
Muss ich dafür einen Thread machen, dass die Form trotzdem ansprechbar ist?

Danke schon mal.
Faux

n0b0dy 16. Sep 2005 22:30

Re: listView zu langsam?
 
joa ListView is echt sau lahm.
nimm doch nen VirtualStringTree. ist zwar ein Tree, aber kannste auch als Liste nehmen ;) UND is HAMMER SCHNELL. siehe demos ;)

LINK

phXql 16. Sep 2005 22:31

Re: listView zu langsam?
 
Zitat:

Zitat von n0b0dy
joa ListView is echt sau lahm.
nimm doch nen VirtualStringTree. ist zwar ein Tree, aber kannste auch als Liste nehmen ;) UND is HAMMER SCHNELL. siehe demos ;)

LINK

in c#? wäre mir neu...

n0b0dy 16. Sep 2005 22:33

Re: listView zu langsam?
 
ui schei*e das tut mir echt leid :((((

hab das voll verpeilt

Luckie 16. Sep 2005 22:42

Re: listView zu langsam?
 
Eine Millionen Einträge in einem List dem Benutzer zur Auswahl anbieten. Na der wird sich bedanken. ;)

faux 16. Sep 2005 23:12

Re: listView zu langsam?
 
Es ist eher zum nachsehen eines bestimmten Eintrags gedacht. Das ganze per Suche zu erledigen, wäre sicher besser... :D

alzaimar 17. Sep 2005 07:16

Re: listView zu langsam?
 
Erstmal gibt es ein BeginUpdate/EndUpdate. Jedenfalls in der VCL, vermutlich auch in .Net.

Und es gibt für die Listview in der VCL einen 'VirtualMode'. Dann wird nämlich nur die Anzahl der Einträge vorgegeben, befüllen muss man es nicht. Die Listview holt sich dann über ein OnGetData (Zeilennr) die in der X.ten Zeile darzustellenden Daten. Damit erübrigt das 'Befüllen' und die ListView wird _sofort_ dargestellt.

MathiasSimmack 17. Sep 2005 07:40

Re: listView zu langsam?
 
Zitat:

Zitat von alzaimar
Erstmal gibt es ein BeginUpdate/EndUpdate. Jedenfalls in der VCL, vermutlich auch in .Net.

Yo. :) Heißen sogar auch so.

faux 17. Sep 2005 21:40

Re: listView zu langsam?
 
Bei mir nicht... lol

MagicAndre1981 17. Sep 2005 22:11

Re: listView zu langsam?
 
Zitat:

Zitat von faux
Bei mir nicht... lol

Delphi-Quellcode:
listView1.BeginUpdate();

listView1.EndUpdate();
Na logo heißen die so. Sogar in .NET 2.0 ;-)


Alle Zeitangaben in WEZ +1. Es ist jetzt 04:29 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz