2013-02-16 3 views
1

Я узнал много ответов об обработке заголовка заголовка TabItem в коде, но мне нужно обработать это событие в модели просмотра. Заранее благодаримWPF-MVVM: TabItem Обработка событий щелчка заголовка в viewmodel

+0

http://stackoverflow.com/questions/ 5162805/связывания-а-ICommand-к-а-Wpf-TabControl-TabItem-с использованием-XAML-MVVM – kenny

ответ

2

Привязать свойство к элементу управления Tab SelectedIndex.

Ваш XAML:

<TabControl x:Name="tabControl" SelectedIndex="{Binding tabControlSelectedIndex}"> 

Ваш ViewModel:

Private _tabControlSelectedIndex As Integer 
Public Property tabControlSelectedIndex As Integer 
    Get 
     Return _tabControlSelectedIndex 
    End Get 
    Set(value As Integer) 
     If _tabControlSelectedIndex <> value Then 
      _tabControlSelectedIndex = value 
      OnPropertyChanged("tabControlSelectedIndex") 

      ' 
      ' Whatever you want to handle here 
      ' 

     End If 
    End Set 
End Property 
1

Вы можете использовать EventToCommand подход MVVM светового сигнала:

  1. Добавить ссылку на System.Windows.Interactivity.dll к вашему проекту.

  2. Добавить xmlns:i="http://schemas.microsoft.com/expression/2010/interactivity"

  3. Добавить XAML, например:

    <Button> <i:Interaction.Triggers> <i:EventTrigger EventName="MouseEnter" > <i:InvokeCommandAction Command="{Binding FooCommand}" /> </i:EventTrigger> </i:Interaction.Triggers> </Button>

Вы можете увидеть код здесь: http://www.danharman.net/2011/08/05/binding-wpf-events-to-mvvm-viewmodel-commands/

Смежные вопросы