Questa è più una questione di architettura/design.Come evitare un inferno di dati/eventi su uno schermo complesso?
Ho eseguito alcuni progetti in passato scritti in WPF/Windows Forms, ecc. Che hanno schermi complessi con molti campi e questi campi sono collegati tra loro (i loro valori dipendono l'uno dall'altro con qualche logica coinvolti).
Questi progetti che ho assunto dopo che sono stati implementati, e ho trovato molti eventi/dati si sono bloccati all'inferno. Ciò che intendo è che, poiché tutti questi campi dipendono da altri, hanno implementato INotifyPropertyChanged e altri campi sono essere modificato di conseguenza. Ciò fa sì che gli stessi campi vengano aggiornati 5-6 volte quando lo schermo viene caricato e l'ordine in cui vengono popolati i campi causa errori orribili. (Per esempio, Data è stato impostato prima Tipo di lavoro, anziché dopo Tipo di lavoro, così ho finire con un diverso Fee lavoro.)
A peggiorare le cose, alcuni hack sono implementati su Eventi di interfaccia utente (ad esempio, DropDown modificato per aggiornare il campo X) mentre altri sono nel modello di dominio a cui l'interfaccia utente si lega.
Fondamentalmente, è un gran casino, e voglio solo sapere qual è il modo migliore per implementare qualcosa del genere è se dovessi iniziare da zero. O è una buona idea evitare uno schermo così complesso in primo luogo?