come dovrebbe il modello MVP gestire le viste create in fase di runtime?
ad esempio
C'è una mainView (che ha un modello e un presentatore) che deve visualizzare un elenco, ogni elemento nella lista è rappresentato dalla sua vista, listItemView (che ha anche il suo modello e presentatore).
è necessario creare listItemViews in fase di esecuzione, insieme ai relativi modelli e relatori e devono essere tutti collegati.
La soluzione che ho trovato è quella di fare in modo che mainPresenter esegua tutte le creazioni, crea i relatori, i modelli e crea anche le viste utilizzando una fabbrica astratta.
Il mainPresenter quindi collegherà tutto, passerà la vista appena creata a mainView usando un metodo AddUiEelement che ho implementato tutte le viste. Il mainPresenter avrà anche un elenco di listItemPresenters che aggiungerà tutti i listItemPresenters che crea in fase di runtime.
Funziona tutto come mi aspetto, ma riesce anche a separare la tecnologia dell'interfaccia utente dal presentatore in quanto la fabbrica astratta incapsula tutta la logica di creazione dell'interfaccia utente, tuttavia mi sembra quasi una trappola, o almeno inelegante.
Sto reinventando la ruota, questo è un problema comune che è stato risolto in un modo migliore, mi piacerebbe vedere una soluzione migliore.
questo è tutto usando .net winforms ma ho bisogno di una soluzione per winforms / wpf e JavaFX