Другой вариант с меньшим количеством кода будет состоять в том, чтобы определить два ListBox, каждый со своими собственными шаблонами и привязанный к своим собственным коллекциям. Определите их каждый в том же физическом пространстве и просто управляйте тем, какой виден в зависимости от вашего состояния. Вы даже можете сделать это с помощью Visual State Manager и пользовательских состояний.
ли связать элемент управления с холстом в качестве шаблона для нескольких шаблонов данных?
У меня есть 2 коллекции, и в зависимости от типа я хотел бы показать другой элемент управления на моем холсте.
Я не уверен, но я мог бы подумать о Viewmodel, который имеет 2 ObservableCollections. Например, если у меня будут «Фигуры» и «Связи», и я хотел бы отобразить их обоих на холсте? В случае сценария построения диаграммы ...
Я хотел бы сделать это способом mvvm, и я не уверен, что подход с несколькими DataTemplate является правильным, но это пришло мне на ум. Но у меня все еще есть проблемы, чтобы получить привязку прямо в моей голове. Если я установлю для DataContext значение ViewModel, мне не удастся связать 2 коллекции с элементом управления ... = (Я тоже открыт для других идей ....
Это возможно? И если да, то как будет выглядеть привязка