Performanceprobleme mit Autocomplete

18/02/2009 - 10:43 von Gernot Pfeifer | Report spam
Hallo zusammen,

ich nutze in einer Textbox die Autocomplete-Funktion; dabei schreibe ich ca.
300 Elemente die die Customsource.

Quellcode:
Dim zaehler As Long
For zaehler = 0 To dsAuswahlliste.tables("OETab").rows.count - 1
frmCallin.txtAFirma.AutoCompleteCustomSource.Add(dsAuswahlliste.tables("OETab").rows(zaehler).Item(2).ToString)
Next

Klappt auch eigentlich wunderbar, wenn ich keine Performanceprobleme hàtte;
es dauert ca. 5 Sekunden, bis die "Befüllung" beendet ist.
Gibt es irgendeinen Trick, wie man das ganze Beschleunigen kann?

Danke!
Gernot
 

Lesen sie die antworten

#1 Armin Zingler
18/02/2009 - 13:06 | Warnen spam
Gernot Pfeifer wrote:
Hallo zusammen,

ich nutze in einer Textbox die Autocomplete-Funktion; dabei schreibe
ich ca. 300 Elemente die die Customsource.

Quellcode:
Dim zaehler As Long



Integer genügt nicht?

For zaehler = 0 To dsAuswahlliste.tables("OETab").rows.count - 1

frmCallin.txtAFirma.AutoCompleteCustomSource.Add(dsAuswahlliste.tables("OETab").rows(zaehler).Item(2).ToString)
Next
Klappt auch eigentlich wunderbar, wenn ich keine Performanceprobleme
hàtte; es dauert ca. 5 Sekunden, bis die "Befüllung" beendet ist.
Gibt es irgendeinen Trick, wie man das ganze Beschleunigen kann?



Ein Versuch:

1. Option strict einschalten

dim dt as datatable = dsAuswahlliste.tables("OETab")
with frmCallin.txtAFirma.AutoCompleteCustomSource
For zaehler = 0 To dt.rows.count - 1

.Add(dt.rows(zaehler).Item(2).ToString)
Next
end with


Ich schàtze, da làuft aber noch mehr Code ab, wenn es 5 Sekunden dauert. Geh
mal per Einzelschritt durch. Haltepunkt können beim Debuggen auch die
Ausführung verlangsamen.
Versuche außerdem mal die AddRange statt der Add-Methode.


Armin

Ähnliche fragen