У меня есть приложение, написанное в WPF (MVVM), которое на основе некоторых условий создаст экземпляры разных UserControls, Эти UserControl полностью независимы, чтобы отображать определенную информацию. У них есть встроенная логика, например таймеры и т. Д., Поэтому я не могу использовать Шаблоны.Привязка к коллекции UserControl
Теперь у меня возникла проблема с тем, что я хочу создать список UserControls в ViewModel и привязать к нему хост-интерфейс. Проблема в том, что я не знаю, как связывать и что связывать. В проекте, отличном от MVVM, вы просто получите макет, в который хотите поместить свои элементы управления, и добавьте их в качестве детей. В приложении MVVM я не знаю, как это сделать. Я предполагаю, что WrapPanel с ItemsSource, который добавит все элементы управления и изменит размер по мере необходимости на основе UserControls.
Может кто-нибудь предложить решение?
EDIT: Мои ViewModel выставляет ObservableCollection из IMyDriver прямо сейчас. Так вот что я подумал, чтобы немного разбить MVVM, чтобы получить следующее: Теперь каждый IMyDriver может быть другим типом драйвера и может реализовывать различные другие интерфейсы. Мне нужен пользовательский интерфейс для создания определенных UserControls, которые знают, как получить максимум от этих драйверов, исходя из их возможностей. Короче говоря, UserControls подключается к устройству через драйвер для опроса данных. И каждый UserControl делает это определенным образом.
* Я хочу создать список UserControls в ViewModel * ... нет, нет и нет! Это не так, как работает MVVM, поэтому либо измените свой подход, либо удалите тег MVVM из вашего вопроса ... вы не можете иметь его в обоих направлениях. – Sheridan
DataTemplates связывает типы VM с UserControls. Bam. Готово. – Will
Будет ли этот ответ вместе с Шериданом заставил меня думать в правильном направлении. Большое спасибо! – XMight