[*]In OnEdited werden Daten in
DB geschrieben und Daten neu in VST geladen. U.U. liegt editierter Satz jetzt in anderer Reihenfolge
Für mich stellt sich die Frage, warum du die Daten neu laden willst? Hier würde ein einfaches InvalidateNode(Node) zur Aktualisierung der Anzeigen eigentlich reichen.
Ich mache es allgemein so:
Delphi-Quellcode:
focusedItemOID := GetLVFocusedItemOID(vlvList);
vlvList.BeginUpdate;
try
// Daten aktualisieren
finally
vlvList.EndUpdate;
end;
SetLVFocusByItemOID(vlvList, focusedItemOID);
In der Prozedure SetLVFocusByItemOID() steht dann am Ende in etwa folgendes:
Delphi-Quellcode:
vlvList.ClearSelection;
vlvList.FocusedNode := Node;
vlvList.Selected[Node] := True;
Anmerkung: Ich setzte den VST schon sehr lange ein. Weil er in eigenen Frameworks eingebunden ist, auch nicht die aktuellste Version.
Bis bald...
Thomas