2010-12-09 12 views
5

alt textinformación pasar de un modelo de vista a otro

estoy usando el patrón de arquitectura M-V-VM.

Quiero que mi programa tenga dos vistas, Ver A y Ver B. Comienzo el programa con Ver A. Ver B se muestra en el programa cuando hago doble clic en un elemento en Ver A.

¿Cómo debería estructurar mi programa de manera que pueda lograrlo?

Respuesta

2

Tener un modelo de vista como:

  • ParentViewModel
    • ChildViewModel1
      • IsVisible
      • un comando que cambia la propiedad de IsVisible ChildViewModel
    • ChildViewModel2
      • IsVisible

y Ver como:

  • ParentView
    • ViewPart1
      • Visibilidad obligado a ChildViewModel1.IsVisible (uso BooleanToVisibilityConverter)
      • Un botón con destino al Comando que activa la visibilidad
    • ViewPart2
      • Visibilidad obligado a ChildViewModel1.IsVisible (uso BooleanToVisibilityConverter)

Esto debería resolver su problema.

+0

¿Los objetos que no son visibles aún se guardan en la memoria? –

+0

Sí. Como dijiste, simplemente no son visibles. – decyclone

+0

Otra pregunta, ¿cuál es el papel de ChildViewModel2? –

1

que podría estar interesado en la aplicación de la muestraBookLibrary del WPF Application Framework (WAF). Muestra una vista maestra/detalle con dos vistas separadas y dos modelos de vista separados. Además, tiene un diálogo modal que incluye un propio ViewModel para la operación "Prestar a" que está conectado al libro seleccionado.

Cuestiones relacionadas