Вы можете использовать Messenger для этого: Отправьте пользователя в UserViewModel:
Messenger.Send<User>(userInstance);
просто отправит пользователя всем, кто заинтересован.
И зарегистрируйте получателя в своей CardViewModel:
Messenger.Register<User>(this, delegate(User curUser){_curUser = curUser;});
или вы также можете отправить запрос из вашей CardViewModel для крика пользователю:
Messenger.Send<String, UserViewModel>("Gimme user");
И отреагируйте на это в UserViewModel:
Messenger.Register<String>(this, delegate(String msg)
{
if(msg == "Gimme user")
Messenger.Send<User>(userInstance);
});
(В реальном сценарии вам лучше использовать перечисление, а не строку:))
Возможно, вы даже можете ответить напрямую, но я не могу проверить это в данный момент.
Просто проверьте это: Mvvm light Мессенджер
person
CodeWeasel
schedule
23.04.2010