Я изучаю использование MVVM, и хотя я понимаю это по большей части, есть одна вещь, которую я не могу понять.
Представьте, что у меня есть комбинация View и ViewModel, отображающая список foobars. Когда пользователь выбирает foobar в списке и нажимает кнопку редактирования, я хочу, чтобы foobar отображался во всплывающем диалоговом окне, чтобы его можно было редактировать. Это диалоговое окно (представление) будет иметь свою собственную связанную ViewModel.
Я понимаю, что кнопку можно привязать к команде в списке ViewModel, но как мне создать экземпляр редактора foobar?
1) Нужно ли мне отправлять сообщение обратно в Просмотр, который откроет диалоговое окно? Если да, то разве это не противоречит цели владения командованием?
2) Как foobar передается в ViewModel для редактора? Если это с помощью его конструктора, разве это не затрудняет объявление ViewModel в XAML?
Я чувствую, что это последний кусок головоломки, который мешает мне использовать MVVM, и я бы очень хотел получить хорошее независимое решение для этого.
Спасибо Мэтт