Soy nuevo en .net y MVVM designmodel. Estoy atascado ahora, porque en el archivo codebehind de una de mis Vistas, necesito obtener el Modelo correspondiente como un objeto. ¿Cómo está la relación aquí? ¿Es posible, y es "la forma correcta de hacerlo"?MVVM Modelo de acceso desde la vista
Respuesta
La Vista debe tener acceso al ViewModel, que envuelve el Modelo, ocultándolo de la Vista. Si necesita acceder a las propiedades del Modelo desde la Vista, obtenga ViewModel para exponerlas como propiedades a las que se puede vincular la Vista.
ViewModel no debería tener absolutamente ningún conocimiento de la vista. View debería usar DataBinding solo para que no tenga conocimiento del modelo o ViewModel.
Si necesita interactuar con la vista, todo debe ser a través de DataBinding. Solo en casos excepcionales debe recurrir al código subyacente.
Así que tienen una propiedad en el modelo de vista y unen a la vista.
Quiere acceder al Modelo desde la Vista, y no al revés. –
public partial class MyView : Window
{
private MyViewModel aModel;
public MyView()
{
InitializeComponent();
aModel = new MyViewModel();
this.DataContext = aModel();
}
Ahora la vista cambiará sus conexiones de datos de control que enlazan a las propiedades públicas de ViewModel.
MVVM no prohíbe que la Vista acceda al Modelo directamente. Eso es un malentendido común en la comunidad de MVVM.
Su ViewModel puede exponer el Modelo subyacente para que la Vista pueda acceder directamente al modelo.
Encuadernación:
{Binding Model.Title}
código subyacente:
((MyViewModel)DataContext).Title
La aplicación (EmailClient) muestra modelo de vista de la WPF Application Framework (WAF) muestra cómo acceder al modelo de la vista.
- 1. acceso MVVM vista padre modelo desde dentro de la colección
- 2. MVVM vista de base clase de modelo
- 3. Cómo actualizar la vista desde un modelo de vista en WPF usando el diseño MVVM
- 4. WPF MVVM modelo de vista DesignMode constructor
- 5. Silverlight MVVM modelo de enlace y vista modelo
- 6. MVVM - Diferencia entre el modelo y el modelo de vista
- 7. MVVM duplicar, Características del modelo en modelo de vista
- 8. WPF (MVVM): ¿Cerrar una vista desde Viewmodel?
- 9. Actualizando un modelo de vista desde otro modelo de vista
- 10. modelo de acceso de la vista en codeigniter?
- 11. Windows Forms (WinForms) Modelo Ver modelo de modelo de vista (MVVM) a DataBind o no
- 12. Prism2/MVVM Cerrar Vista desde ViewModel
- 13. Forma correcta de acceder a un modelo de vista desde un modelo de vista existente
- 14. ¿Cómo mantengo la coherencia entre el modelo y el modelo de vista en el patrón MVVM?
- 15. Validación: modelo o modelo de vista
- 16. WPF MVVM manera correcta para disparar eventos en vista del modelo de vista
- 17. El modelo en MVVM
- 18. acceso Fragmento Vista desde onCreate de Actividad
- 19. Modelo con base de datos en MVVM
- 20. ¿Cómo se mantiene la lógica de vista fuera del modelo y la lógica de negocios fuera del modelo de vista en MVVM?
- 21. WPF - MVVM - Ver la jerarquía del modelo
- 22. MVVM light - cómo acceder a la propiedad en otra vista modelo
- 23. Accediendo al modelo desde una vista de diseño en Grails
- 24. Herencia de MVVM con modelos de vista
- 25. parámetros de la petición de acceso desde una vista JSP en la primavera Web MVC sin ponerlos en un modelo
- 26. Animaciones de vista dinámica usando MVVM
- 27. WPF MVVM actualizando el Modelo de Vista en un Trabajador de Fondo
- 28. Manejando el estado de la vista en Silverlight con MVVM
- 29. MVC: Controlador de vista de modelo: ¿la vista llama al modelo?
- 30. MVVM: ¿Realmente la vista necesita tener un constructor predeterminado?
Bien, pensé que la respuesta sería algo así. Pero todavía tengo algunos problemas. Cuando hago clic en una vista 1 de tipo A, quiero que guarde su modelo correspondiente en el modelo de vista. cuando hago clic en la vista 2 del tipo A, también quiero que guarde su modelo correspondiente en el mismo modelo de vista. hasta ahora, solo sé cómo salvarme (la vista) no el modelo:/ – Andreas