2011-05-31 9 views
5

Estoy aprendiendo el patrón de diseño de estado. Estoy usando C# ASP.Net (no estoy seguro de si el idioma es relevante).Patrón de diseño de estado Interfaz de usuario

Básicamente, mi objeto tiene estados A, B y C, y también acciones para moverlo entre diferentes estados: ActionAToB, ActionBtoA y ActionAtoC.

Lo que intento hacer es vincular este objeto a una pantalla, y tener botones desencadenar estas acciones, pero el problema es: ¿Cómo solo se muestran los botones relevantes para el estado en que se encuentra el objeto, y mostrar/ocultar botones cuando el estado cambia?

Estoy buscando una solución elegante que vaya con el patrón de estado o cualquier sugerencia que haga que la UI sea fácil de mantener.

Respuesta

1

Utilice el patrón Observer así como el patrón de estado. Haga que su clase Form (o lo que sea que esté usando para su UI) sea un observador que observe sus objetos A-B-C. Cuando esos objetos cambian su estado, notificarán a la vista y ella se actualizará en consecuencia, ocultando los botones apropiados. blogged sobre esto, ver aquí: Programate Algo Blog

No te asustes si ves algo de español, tanto en mi blog y es bilingüe :)

Editar: Si desea que su interfaz de usuario a ser más fácil de MANTENER , también debe observar un patrón para separar Vista y Modelo. Hay muchos, algunos son MVC, MVP y MVMM.

Cuestiones relacionadas