vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
SEPA-Dateien erstellen inkl. IBAN-, BLZ-/Kontonummernprüfung  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

Allgemeine Diskussionen
Listview Einträge schnell löschen 
Autor: Robert67
Datum: 18.02.05 15:41

Hallo zusammen, habe folgendes Problem:

Ich benutze ein nicht sichtbares Listview-Control für die Datenverwaltung. Da ich sehr viel Einträge verwalte (können schon mal 500000 und mehr sein), kann es beim löschen aller Einträge schon mal ziemlich lange dauern. Normalerweise macht man das ja sicher mit:

ListView1.ListItems.Clear

Diese Methode dauert allerdings viel zu lange.

'########################################################
Auch über die folgene API-Methode dauert es genau so lange:


Private Const LVM_FIRST = &H1000
Private Const LVM_DELETEITEM = (LVM_FIRST + 8)
Private Const LVM_DELETEALLITEMS = (LVM_FIRST + 9)

Private Declare Function SendMessage Lib "user32.dll" Alias "SendMessageA" _
(ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, ByRef lParam As Any) As Long

Public Function ListView_DeleteItem(hwnd As Long, i As Long) As Boolean
ListView_DeleteItem = SendMessage(hwnd, LVM_DELETEITEM, ByVal i, 0)
End Function

Public Function ListView_DeleteAllItems(hwnd As Long) As Boolean
ListView_DeleteAllItems = SendMessage(hwnd, LVM_DELETEALLITEMS, 0, 0)
End Function

Aufruf dann:
ListView_DeleteAllItems ListView1.hwnd

'########################################################


Habs auch schon mit einer Klasse versucht. Dauert ganau so lange das entladen. Ein Array
kommt nicht in Frage, da ich dort nicht die Möglichkeit habe Einträge zu editieren etc. ich muß deshalb auch ein Listview verwenden, da die Einträge sehr schnell auf die Liste kommen...und ich doppelte Einträge abfangen muß über die Fehlermeldung des Listviews (Bei identischem Key)

Ich bräuchte also irgendeine schnelle (sehr schnelle) Methode, um das Listview zu entladen, bzw. die Einträge zu löschen. Vielleicht kann ja jemand helfen....wäre super. Bin für jeden Vorschlag dankbar.
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Listview Einträge schnell löschen954Robert6718.02.05 15:41
Re: Listview Einträge schnell löschen607vbtricks18.02.05 17:26
Re: Listview Einträge schnell löschen574Robert6718.02.05 18:47
Re: Listview Einträge schnell löschen615vbtricks19.02.05 09:08

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel