Что вы получите от моделей с комбинированным представлением?Являются ли те свойства, которые вы хотите обернуть в отдельные модели представлений, такими сложными ?Например, будут ли сценарии, когда вам понадобятся более сложные модификации / обработка, скажем, MainViewModel.PropertyX
?
Если ваши свойства сводятся к простым значениям, которые вы можете установить или нет, вводя новые модели представленийдля них звучит как зайти слишком далеко.Сохраняйте это как можно более простым.
Однако, если части вашего документа имеют смысл редактировать вне контекста (как, например, вдали от документа, из которого они получены- подумайте, например, адресную информацию), или есть несколько наборов похожих полей, тогда, возможно, стоит обернуть их в общую модель представления.Это избавит вас от лишней работы.
Prism, MVVM Light ..?
Если ваше приложение столь же просто, как несколько просмотров и моделей с просмотром , я бы остался в сторонеиз призмы.Это довольно тяжелый и довольно сложный каркас.MVVM Light, с другой стороны, может быть неплохой идеей даже для изучения.
Редактировать:
Учитывая, что ваша модель довольно велика, она идеально подходитсмысл разделить это.Я также предлагаю создать выделенные пары модель / представление для сущностей, из которых состоит ваша основная сущность (документ).Привязка к моделям может показаться привлекательной, но чаще всего вы будете сожалеть об этом решении.Проще говоря:
- модель отдельного представления для сущностей, в которых она имеет наибольшее значение (может идти с all , но обычно это суждение - "Мне действительно нужноновая модель представления для этого объекта, предоставляющая одностроковое свойство? ")
- отдельные представления, соответствующие моделям представления
- модель основного вида (документ), представляющая частичноепросмотр моделей в качестве привязываемых свойств
- основной вид настройка частичный просмотр DataContexts для частичного просмотра моделей, взятых из основного