EventTrigger.RoutedEvent 属性
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
获取或设置将激活该触发器的 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。
示例
此示例演示如何使用样式中的事件触发器对 的 FrameworkElement和 MouseLeave 事件进行动画处理MouseEnter。 在此示例中, Style 将 TargetType 设置为 Rectangle。 因此,无需使用类名限定 MouseEnter
和 MouseLeave
事件名称。
<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的事件。 控件(如 Button 或 TextBox )对用户输入事件(如鼠标单击和键盘事件)执行特定操作。 例如,如果要设置按钮的样式,并尝试将 MouseDown 事件设置为 RoutedEvent 的 EventTrigger, EventTrigger 则 永远不会应用 ,因为该事件首先由按钮处理。 可以改用 事件 PreviewMouseDown 或其他事件。
使用数据绑定时,如果使用 TargetUpdated 事件,则必须将 NotifyOnTargetUpdated 对象的值 Binding 设置为 true 才能引发事件。