У меня есть коллекция ViewModels, которую я хочу привязать к свойству ItemsSource
TabControl
и иметь возможность добавлять / удалять их динамически, поэтому реализовано как Observable<TabViewModel>
.
Однако TabControl
, похоже, ожидает типы, которые наследуются от TabItem
, который является объектом визуального контроля. Я не хочу, чтобы мои ViewModel наследовали от TabItem
, поскольку это означает, что они должны быть привязаны к визуальной реализации, а также все тесты должны выполняться как STA.
Как связать коллекцию ViewModels для заполнения заголовков и содержимого элемента управления вкладкой, не завися от объекта TabItem
? Т.е. я просто использую стили и шаблоны, основанные на типе ViewModel. Точно так же, как если бы у вас был ListBox
и вы хотели, чтобы элементы отображались непосредственно из экземпляров viewmodel, с определенным шаблоном, это легко сделать, переопределив свойство ItemTemplate
.
Как мне сделать это с TabControl
без использования TabItem
?