mvvmlight galasoft wpf mvvm mvvm-light

wpf - galasoft - nuget mvvmlight



Mensajes o eventos de MVVM o ¿qué otra opción hay? (1)

Tengo un menú en MainViewModel, ahora en la selección de un menuItem particular, quería actualizar los datos de una vista que ya está cargada.

es decir, aunque hay una instancia de ese viewModel en MainViewModel, cuando intento invocar el método a través de esa instancia y cambiar la propiedad de los datos, no muestra los cambios en la vista. Mientras que los mismos cambios ocurren cuando invoco ese método a través del comando de retransmisión usando un botón en la vista de ese viewModel.

Ahora es como si necesitara invocar el comando de retransmisión de ese viewModel desde MainViewModel, supongo que eso solucionará el problema, pero ¿cómo hacer eso? cuál es la manera más fácil ¿Tendré que usar mensajes?


Probé la clase MVVM Light Messenger, es bastante sencillo y elegante (mantiene ViewModels ligeramente acoplado). y lo más importante, funciona

code: Send: Messenger.Default.Send(stringParameter, "key_anything"); Register: Messenger.Default.Register<string>(this, "key_anything", invokeFunction); private void invokeFunction(string stringParamter) { //code goes here! }