Привязка коллекции viewmodel к tabcontrol с 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>

Но, как упоминалось в статье выше, я вижу, что модель представления создается дважды. Сначала в MainViewModel, когда я пытаюсь заполнить наблюдаемую коллекцию вкладок, и один раз, когда я пытаюсь перейти к элементу вкладки.

Как я могу этого избежать ?.


person user679839    schedule 12.04.2013    source источник
comment
По указанной вами ссылке будет получен ответ 404. Что вы имеете в виду, говоря, что модель представления создается дважды? Можете ли вы показать соответствующую логику и из ViewModels?   -  person alhalama    schedule 13.04.2013
comment
Исправил ссылку. Не могли бы вы попробовать еще раз?   -  person user679839    schedule 16.04.2013


Ответы (1)


Я считаю, что на этот вопрос уже есть ответ в ветке форума Infragistics, которую вы связали.

Если у вас есть дополнительные вопросы, я могу предложить вам задать их на форумах IG, поскольку вы можете получить ответ от эксперта IG.

person Stefan    schedule 27.05.2013