Взаимодействие WPF в стиле вызывает команды на модели представления

Возможный дубликат:
Как добавить Blend Behavior в Style Setter

когда я использую триггер взаимодействия в стиле, я получаю следующую ошибку: "триггеры не являются присоединяемым элементом стиля типа". Любое объяснение, что на самом деле означает эта ошибка и как ее решить.

Для справки взгляните на пример EventToCommand инструментария MVVM Light.

В этом конкретном случае я использую элемент управления Timeline из Infragistics, который представляет события как EventTitle, и когда щелкает EventTitle, я хотел бы вызвать команду (обратите внимание, что элемент управления Timeline не определяет никакого события, такого как EventTitleClicked). В настоящее время я могу достигнуть функциональности, используя события и вызывая мой метод ViewModel из кода позади, вместо этого я хотел бы вызвать команду непосредственно из xaml.

<Style x:Key="EventTitleTopStyle" TargetType="igTl:EventTitle">
    <!-- The following is not working -->
    <i:Interaction.Triggers>
        <i:EventTrigger EventName="MouseLeftButtonDown">
            <!--<cmd:EventToCommand Command="{Binding MyCommand}" />-->
        </i:EventTrigger>
    </i:Interaction.Triggers>

   <!-- Using event setter instead to achieve the same -->
    <EventSetter Event="MouseLeftButtonDown" Handler="TopTitleMouseLeftButtonDown" />
    ....

2 ответа

<interactivity:Interaction.Triggers>
     <interactivity:EventTrigger EventName="MouseDoubleClick">
          <behaviours:ExecuteCommandAction Command="{Binding Path=DataContext.YourCommand, RelativeSource={RelativeSource FindAncestor,AncestorType={x:Type UserControl}}}" 
               CommandParameter="{Binding }"/>
     </interactivity:EventTrigger>
</interactivity:Interaction.Triggers>
<TextBox x:Name="EditableControlTextBox" Loaded="RoomTextBox_Loaded">
         <interactivity:Interaction.Triggers>
              <interactivity:EventTrigger EventName="LostFocus">
                     <!--<cmd:EventToCommand Command="{Binding MyCommand}" />-->
              </interactivity:EventTrigger>
          </interactivity:Interaction.Triggers>
</TextBox>
Другие вопросы по тегам