Sto cercando di decidere il modo migliore per gestire la comunicazione tra un UserControl che è annidato all'interno di un altro UserControl e il Form padre. Ho un modulo, all'interno del form c'è un UserControl con un controllo TabControl. Ogni scheda in essa è anche rappresentata con un controllo utente.
Un oggetto (per il binding) viene istanziato nel modulo e quindi passato a una proprietà nel primo UC, che quindi lo passa a una proprietà nell'UC UC nidificato. Ogni UC utilizza una BindingSource per collegare i controlli di input effettivi. Questo comportamento di collegamento a margherita diventa complicato. Ora voglio inviare un comando di salvataggio al modulo principale, quindi ho bisogno di eseguire il daisy-chain di alcuni eventi sul modulo.
Ritengo che l'intero oggetto non debba essere di proprietà del modulo padre. L'oggetto praticamente aziona l'intera applicazione, ma poiché la forma e l'interfaccia utente stavano diventando un incubo di manutenzione, ho iniziato a suddividere i componenti dell'interfaccia utente in UserControls.
Credo che le mie domande siano: - Questo sarebbe un buon posto per una sorta di modello di Localizzatore di servizi? - Devo semplicemente mantenerlo semplice con un'istanza statica singleton di questo oggetto a cui è possibile accedere da qualsiasi controllo? - Esistono altri schemi che potrebbero essere utili da consigliare?