Hallo!
Ich arbeite an einem Grid, welches eine
DB-Tabelle von Items einliest und deren Bezeichnung im Grid anzeigt.
Das Grid gibt dem User die Möglichkeit, diese Bezeichnung von einem (oder mehrerer) Item(s) zu ändern.
Hierzu habe ich eine Spalte 'Bezeichnung' und 'Bezeichnung_alt' (unsichtbar, zum Puffern der ursprünglichen Einträge).
'Bezeichnung_alt' ist über DataBinding mit der entsprechenden Spalte der
DB-Tabelle verknüpft und lädt so beim Öffnen des Grid die Datensätze ein.
Anschließend werden mittels einer FOR-Schleife alle Bezeichnungen von 'Bezeichnung_alt' nach 'Bezeichnung' kopiert.
Der Benutzer kann die Zellen der Spalte 'Bezeichnung' nun ändern.
Beim Klick auf OK können nun mittles Vergleich von 'Bezeichnung_alt' und 'Bezeichnung' Änderungen erkannt werden.
Nun habe ich folgendes Performance-Problem:
Die zugrunde liegende Tabelle hat mittlerweile fast 7000 Einträge.
Nach dem Öffnen des Grids ist die Iteration, welche 'Bezeichnung_alt' nach 'Bezeichnung' kopiert enorm langsam.
Ich suche nun einen Weg, mir diese Schleife zu ersparen.
Verknüpfe ich über DataBinding->FieldName 'Bezeichnung' auch mit dem Feld aus der
Query, so kann ich im Grid die Einträge in den Zellen nicht mehr editieren.
Könnt ihr weiterhelfen?
Ich denke, ich brauche schon die beiden Zellen, um Änderungen zu erkennen, sonst müsste ich ja immer die ganze Tabelle zurückschreiben....
Wie bekomme ich dann die Einträge sowohl in 'Bezeichnung_alt' und 'Bezeichnung' ohne die langsame FOR-Schleife?
Viele Grüße,
Sascha.