[英]Binding collection of viewmodel to tabcontrol with datatemplate
我在將標簽控件綁定到類似於本文中的視圖模型的集合時遇到了問題
<Window.Resources>
<ViewModel:MainViewModel x:Key="MainViewModel" />
<DataTemplate DataType="{x:Type local:Foo1}">
<local:UserControl1 />
</DataTemplate>
<DataTemplate DataType="{x:Type local:Foo2}">
<local:UserControl2 />
</DataTemplate>
<DataTemplate DataType="{x:Type local:Foo3}">
<local:UserControl3 />
</DataTemplate>
</Window.Resources>
<igDock:XamDockManager x:Name="dm">
<igDock:XamDockManager.Panes>
<igDock:SplitPane>
<igDock:ContentPane>
<ContentControl>
<local:Foo />
</ContentControl>
</igDock:ContentPane>
</igDock:SplitPane>
</igDock:XamDockManager.Panes>
</igDock:XamDockManager>
<DockPanel>
<igDock:XamDockManager x:Name="dockManager">
<igDock:TabGroupPane DataContext="{StaticResource ResourceKey=MainViewModel}"
SelectedIndex="{Binding SelectedTabIndex}">
<igExtensions:ContentPaneFactory.PaneFactory>
<igExtensions:ContentPaneFactory ItemsSource="{Binding TabCollection}"
HeaderPath="Title"
ContentPath="." />
</igExtensions:ContentPaneFactory.PaneFactory>
</igDock:TabGroupPane>
</igDock:XamDockManager>
</DockPanel>
但是正如上面的文章中提到的,我看到viewmodel被構造了兩次。 當我嘗試填充可觀察的選項卡集合時,首先是在MainViewModel中,而當我嘗試導航到Tabitem時,第一次。
如何避免這種情況?
我相信這個問題已經在您鏈接的Infragistics的論壇主題中得到解答。
如果您還有其他問題,我建議您在IG論壇中提問,因為您可以從IG專家那里得到答案。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.