Где я должен определить свои шаблоны данных?

Я пытаюсь найти лучший способ связать свои представления и модели представления в MVVM, и я остановился на подходе ViewModel-first с использованием типизированных шаблонов данных, как описано в этой статье и в этом ответе. Я использую Prism и имею несколько модулей со своими собственными библиотеками проектов/классов.

У меня вопрос: Где мои DataTemplates должны находиться в моем решении?

  1. Должен ли я помещать DataTemplates в словарь ресурсов, который находится в том же проекте, который имеет типы/модели представления, которые он отображает?
  2. Должен ли я поместить DataTemplates в словарь ресурсов, который находится в проекте, в котором есть MainWindow приложения (т. е. Shell.xaml)?
  3. Следует ли затем добавить эти словари ресурсов в App.Current.MainWindow.Resources.MergedDictionaries?

Надеюсь, этой информации достаточно, чтобы описать, что я пытаюсь сделать.

Обновление: см. комментарии к выбранному ответу.

10
задан Community 23 May 2017 в 11:52
поделиться