WPF MVVM - Какой самый правильный способ вызывать события в TreeViewItem - PullRequest
2 голосов
/ 24 февраля 2011

В настоящее время я использую это расширение для установки определенных событий, которые обрабатывают данные в ViewModel ... Пример:

<swi:Interaction.Triggers>
    <swi:EventTrigger EventName="Click">
        <esi:CallDataMethod Method="SaveRevision_Clicked"/>
    </swi:EventTrigger>
</swi:Interaction.Triggers>

Где esi и swi:

xmlns:esi="clr-namespace:Expression.Samples.Interactivity;assembly=Expression.Samples.Interactivity"
xmlns:swi="clr-namespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity"

Ночто я хочу установить событие для TreeViewItem?У меня нет прямого доступа к ним?Куда мне поставить эти строки?

<swi:Interaction.Triggers>
    <swi:EventTrigger EventName="Expanded">
        <esi:CallDataMethod Method="Expand"/>
    </swi:EventTrigger>
</swi:Interaction.Triggers>

Заранее спасибо!

1 Ответ

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

Вам необходимо использовать TreeView.ItemContainerStyle, чтобы достичь этого, вот несколько реализаций, которые могут помочь:

Странное поведение WPF TreeView ItemContainerStyle и ItemTemplate

WPF Двойной щелчок TreeviewItem Дочерний узел

...