Для этого я использую среду обмена сообщениями.Попросите MainViewModel подписаться на сообщение, которое должно привести к его обновлению, а затем отправьте это сообщение с дочерней страницы.MainViewModel, все еще находящийся в памяти, услышит это сообщение и сможет ответить.У меня есть пример этого в моем блоге на http://chriskoenig.net/2010/07/05/mvvm-light-messaging/,, но учтите, что вы также можете создавать свои собственные пользовательские сообщения (я лично делаю это все время), а затем просто поднимать их вручную:
// In MainViewModel
Messenger.Default.Register<ChildProcessCompleteMessage>(this, () => RefreshData());
// In ChildViewModel
Messenger.Default.Send<ChildProcessCompleteMessage>(new ChildProcessCompleteMessage());
Это шаблон, который я довольно часто использую в своих приложениях для обеспечения связи между моделями представления.Я не уверен, что это полностью отвечает на ваш вопрос, поэтому дайте мне знать, если вам нужна дополнительная информация.