Те события, которые вы упомянули выше, вообще не имеют никакого отношения к представлению, потому что представление либо будет создано, либо уничтожено этими событиями.Этот момент заставляет события распространяться в коде ViewModel не обязательно способом MVVM, главным образом потому, что в те моменты времени возникновения событий нет View.Просто чтобы правильно реализовать это для «Разделения проблем», вы можете сделать так, чтобы у MainViewModel (в основном синглтона) было все 4 метода и вызывать его напрямую из App.xaml.В противном случае делегат события (мессенджер) будет более чистым.Я предполагаю, что вы хотите выполнить некоторые общие операции с этими событиями, такие как IsolatedStorage или операции сериализации / десериализации.