Deshalb muss man sich Live-Bindings oder anderen Techniken verwenden (MVC-MVP-MVVC)
Andere Techniken bitte! MVVM?
Oder um es anders zu beschreiben:
Dein Datenmodul hat neue Daten - dann schick eine Message an die
GUI "Sie" möge ich bitte aktualisieren. Dann einfach von
GUI Seite die Felder auslesen...
Für Deine Trennung, hoffe ich, dass Du gegen die Datenbankschicht per Interfaces linkst, um diese ggf. austauschen zu können...
Also Eigentlich:
GUI -> GUI_Steuerung -> Business Logik -> Datensteuerung -> Interface(Datenzugriff)
Mavarik