У меня есть TabablzControl. Его DataContext связан с MainWindowViewModel
. Это MainWindowViewModel
содержит свойство ListViewModels
, которое является Источником Предметов TabablzControl.
ContentTemplate TabablzControl - это определенный UserControl с именем DashBoard (таким образом, DataContext каждого DashBoard - это элемент (вызов SmallViewModel) в ListViewModels) . Каждая DashBoard содержит ContentControl, привязанный к свойству CurrentViewModel объекта SmallViewModel, который соответствует каждому CurrentViewModel, и ContentControl представлен по-разному в зависимости от типа CurrentViewModel и от того, как он представлен, был определен в eesource DashBoard (который является ContentTemplate TabablzControl) .
У меня есть ViewModels
(например: ViewModel1 и ViewModel2) . Когда CurrentViewModel
является ViewModel1, Контент, который привязан к CurrentViewModel, будет отображать все, что определено в ресурсе (в данном случае некоторые другие UserControls) .
Я играл с IntertabClient, но это не помогло
// The TabablzControl in MainWindow:
<dragablz:TabablzControl ItemsSource="{Binding ListViewModels}">
<dragablz:TabablzControl.ContentTemplate>
<DataTemplate>
<local:DashBoard/>
</DataTemplate>
</dragablz:TabablzControl.ContentTemplate>
</dragablz:TabablzControl>
//MainWindowViewModel is the DataContext of MainWindow has a ListViewModels of type ObservableCollection<SmallViewModel>
//Dashboard.xaml is a UserControl and its DataContext is SmallViewModell:
<UserControl.Resources>
<DataTemplate DataType = "{x:Type local: ViewModel1}">
<local: UserControl1/>
</DataTemplate>
<DataTemplate DataType = "{x:Type local: ViewModel2}">
<local: UserControl2/>
</DataTemplate>
</UserControl.Resources>
<ContentControl Content ="{Binding CurrentViewModel}"/>
Проблема в том, что каждый раз, когда я перетаскиваю вкладку, UserControl1 и UserControl2 продолжают обновляться, таким образом, работа перетаскиваемой вкладки перед перетаскиванием теряется.
Может кто-нибудь сказать мне, почему и как я могу это исправить?