Закрытие вложенных вкладок с помощью WPF? - PullRequest
1 голос
/ 17 февраля 2011

Я пытаюсь создать пользовательский интерфейс, который содержит вложенные вкладки, но я не могу найти информацию о том, как удалить вложенные вкладки способом MVVM.

Вот мой XAML (для краткости):

<TabControl Name="ProjectTabControl" DockPanel.Dock="Top" ItemsSource="{Binding ProjectTabs}" IsSynchronizedWithCurrentItem="True">
   <TabControl.ContentTemplate>
      <DataTemplate>
         <TabControl DockPanel.Dock="Top" ItemsSource="{Binding FileTabs}" Padding="1">
            <Button Command="{Binding CloseTabCommand}" CommandParameter="TabItem" />
         </TabControl>
      </DataTemplate>
   </TabControl.ContentTemplate>
</TabControl>

Мой вопрос: какой аргумент (ы) я должен передавать в CommandParameter, и как я могу повлиять на него в ViewModel для правильного удаления вкладки?

1 Ответ

1 голос
/ 17 февраля 2011

Не похоже, что у вас есть четкое понимание того, как реализовать шаблон MV-VM в WPF.Похоже, вы знаете, понимаете DataBinding, но шаблон, который демонстрирует ваш пример, похоже, не понимает ViewModels и Commands, которые действительно необходимы для MVVM.

Просмотрите статью, приведенную ниже, и пример приложения, которое он использует.Вы должны найти то, что вы хотите сделать, продемонстрировано здесь и довольно просто реализовать.

Шаблон проектирования Model-View-ViewModel (MVVM) для WPF

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

...