EventTrigger.RoutedEvent 属性

定义

获取或设置将激活该触发器的 RoutedEvent

public:
 property System::Windows::RoutedEvent ^ RoutedEvent { System::Windows::RoutedEvent ^ get(); void set(System::Windows::RoutedEvent ^ value); };
public System.Windows.RoutedEvent RoutedEvent { get; set; }
member this.RoutedEvent : System.Windows.RoutedEvent with get, set
Public Property RoutedEvent As RoutedEvent

属性值

默认值为 null

例外

RoutedEvent 属性不能为 null。

示例

此示例演示如何使用样式中的事件触发器对 的 FrameworkElementMouseLeave 事件进行动画处理MouseEnter。 在此示例中, StyleTargetType 设置为 Rectangle。 因此,无需使用类名限定 MouseEnterMouseLeave 事件名称。

<Style TargetType="Rectangle">
  <Setter Property="Width" Value="50" />
  <Setter Property="Height" Value="50" />
  <Setter Property="Margin" Value="20" />
  <Setter Property="HorizontalAlignment" Value="Left" />
  <Style.Triggers>
    <EventTrigger RoutedEvent="MouseEnter">
        <BeginStoryboard>
            <Storyboard>
              <DoubleAnimation To="300" Duration="0:0:1.5" 
                AccelerationRatio="0.10" DecelerationRatio="0.25" 
                Storyboard.TargetProperty="(Canvas.Width)" />
            </Storyboard>
        </BeginStoryboard>
    </EventTrigger>
    <EventTrigger RoutedEvent="MouseLeave">
        <BeginStoryboard>
            <Storyboard>
              <DoubleAnimation Duration="0:0:1.5" 
                AccelerationRatio="0.10" DecelerationRatio="0.25" 
                Storyboard.TargetProperty="(Canvas.Width)" />
            </Storyboard>
        </BeginStoryboard>
    </EventTrigger>
  </Style.Triggers>
</Style>

注解

EventTrigger当发生指定的路由事件时,应用一组操作。 例如,当鼠标指针位于某个用户界面 (UI) 控件上时,可能需要使用 EventTrigger启动一组动画。

如果包含此 EventTrigger 的模板或样式未 TargetType 指定 属性,则需要使用 ClassName.EventName 语法使用类名来限定事件名称。

EventTrigger 对象无法处理已为 Handled的事件。 控件(如 ButtonTextBox )对用户输入事件(如鼠标单击和键盘事件)执行特定操作。 例如,如果要设置按钮的样式,并尝试将 MouseDown 事件设置为 RoutedEventEventTriggerEventTrigger 则 永远不会应用 ,因为该事件首先由按钮处理。 可以改用 事件 PreviewMouseDown 或其他事件。

使用数据绑定时,如果使用 TargetUpdated 事件,则必须将 NotifyOnTargetUpdated 对象的值 Binding 设置为 true 才能引发事件。

适用于