Общее недоразумение с MVVM в том, что не может никогда, никогда не будет фоновым кодом в представлении. Это просто не соответствует действительности.
Цель MVVM заключается в минимизировать код в код-сзади, но и для вещей, которые непосредственно взаимодействуют с самим (например, событий Windows) зрения, допустимо поставить в некоторый код-за , Кодовое отставание будет обрабатывать Отмена и может сделать минимизацию или вызвать команду в ViewModel или какую-либо другую такую вещь.
В противном случае вам придется придумать запутанную систему обработки события в ViewModel, которая разбивает шаблон MVVM, если ViewModel имеет ссылку на представление (а не наоборот).
полностью здравый ответ. – Robaticus
Звучит разумно. Спасибо! – prostynick
Помните, что точка MVVM - это сделать бизнес-логику, которая окажется в коде, который подлежит тестированию. Если вы можете воспринимать представление как зависимость с помощью интерфейса, то вы действительно не нарушаете эту концепцию, действительно, вы приближаетесь к шаблону Active Presenter, но это тоже неплохо. – Agies