У меня есть TabControl
, связанный с ICollectionView
с производными от ObservableCollection<EditorTabViewModel>
.Мне кажется вполне стандартная модель MVVM Multi-Document?В любом случае, EditorTabViewModel
имеет свойство Content
, которое содержит отображаемую строку.Я считаю, что привязка работает ...
// Add 2 default tabs for a test, also set their Content property to the respective values ...
_tabs.Add(new EditorTabViewModel { Content = "Tab 1" });
_tabs.Add(new EditorTabViewModel { Content = "Tab 2" });
Ее значения правильно отображаются
XAML
<!-- DataTemplate to render EditorTabViewModels -->
<DataTemplate DataType="{x:Type vm:EditorTabViewModel}">
<me:MarkdownEditor
TextContent="{Binding Path=Content.Content, RelativeSource={RelativeSource Mode=TemplatedParent}, Mode=TwoWay}"
Options="{Binding Path=Options, RelativeSource={RelativeSource AncestorType={x:Type Window}}}" />
</DataTemplate>
Результат

Но когда я меняю значение, переключаю вкладки и возвращаюсь, я снова получаю строку, заданную в конструкторе ... показанную в это видео (на экране)
Visual Studio Solution