ventana tutorial que español ejemplos cerrar wpf mvvm dialog window

wpf - tutorial - ¿Cómo manejo la apertura y cierre de Windows con MVVM?



wpf tutorial español (1)

Con MVVM y WPF, ¿cuál sería una buena / directa forma de manejar la apertura y el cierre de ventanas y diálogos nuevos? La apertura y el cierre deben ser impulsados ​​por el ViewModel ¿verdad? Pero ViewModel no debería saber sobre la vista ...


Usualmente uso interfaces para esto. Por ejemplo, si quiero editar un registro en una ventana separada, tengo una interfaz IEditingProvider <TViewModel>, que puedo implementar en otro lugar y luego paso una referencia de interfaz al constructor de mi ViewModel. EditingProvider podría hacer algo como esto:

class MyRecordEditingProvider: IEditingProvider<MyRecordViewModel> { // Implementation of generic interface method public void Edit(MyRecordViewModel model) { EditWindow edit = new EditWindow(); edit.DataContext = model; edit.ShowDialog(); } }