Stimmt ... drüben wird nach dem Hinzufügen noch mehrmals gescrollt.

Es gibt mehrere Quellen für die Daten und anschließend wird nochmal über alles gegangen und Zusatzinfos hinzugefügt.
Die einfache Lösung für das fehlende Malen nun entdeckt: AfterScroll und AfterPost (dort auch das AfterScroll-Event angehängt)
@ol1uw:

Hab's nur noch etwas abgewandelt.
- den DataLink-Hack durch ein einfaches RecNo ersetzt
- den Grid-Hack durch einen anderen bösen Cast ersetzt (nach TStringGrid), weil der existiert bereits
- und Hack bzw. Hacked nenne ich solche Klassen nicht mehr. Access klingt freundlicher und beschreibt auch besser, wozu sie hier dienen soll

- ACHTUNG: Aufpassen, ob die dgTitles in den Optionen, also ob das +1 bzw. -1 nötig ist.
if DataSet1.RecNo = {TDBGridAccess}TStringGrid(DBGrid1).Row then // DataSet1.RecNo-1 wenn ohne dgTitles
Hab auch den Anhang in #15 noch schnell mit dem aktuellen Code aktualisiert.
Ein Therapeut entspricht 1024 Gigapeut.