Cita:
Empezado por Angel.Matilla
Mi comentario anterior no es porque no me facilitara código; es simplemente porque poner un enlace a wikipedia o sugerir un hackeo (*es realmente lo contrario!) es cualquier cosa menos ayuda.
|
El asunto es que el código tal como está es el problema. Y mientras más profundo sigas en esa línea mas difícil será. (Algo que aprendi luego de 4 meses de tratar de poner a andar un proyecto hecho por una multinacional, cuando debi aceptar que habia que reescribir toda la logica de GUI. Ahora, este si que era malo del todo!)
Además, no es claro cual es el flujo de la app, así que es difícil deducir que es lo que hay que hacer! Esa es la razón por la que
a) No es posible dar una respuesta concreta
b) El que tengas que hacer la pregunta, porque el "Code Smell" te esta insinuando que hay un problema, pero precisamente, te impide ver una solución.
---
La lógica GUI no es muy diferente a normal.
Debería ser maso:
Llamando -> ConstructorGUI(parámetros) -> GUI
Lo dificil es retornar valores o cuando desde "Llamando" hay que saber que paso con la GUI.
La manera mas simple es usando un callback, o armando un delegado.
Los eventos deberia ser "reacciones", no usarse en la logica normal (porque los eventos no tienen un orden predecible y terminan armando un flujo espaguetti). Un form es un objeto, asi que puedes agregar tus propios constructores de forma igual.