EventTrigger 类
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
表示一个触发器,该触发器 (动画情节提要) 应用一组操作以响应事件。 不常用。 请参阅“备注”。
public ref class EventTrigger sealed : TriggerBase
/// [Microsoft.UI.Xaml.Markup.ContentProperty(Name="Actions")]
/// [Windows.Foundation.Metadata.Activatable(65536, "Microsoft.UI.Xaml.WinUIContract")]
/// [Windows.Foundation.Metadata.ContractVersion(Microsoft.UI.Xaml.WinUIContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class EventTrigger final : TriggerBase
[Microsoft.UI.Xaml.Markup.ContentProperty(Name="Actions")]
[Windows.Foundation.Metadata.Activatable(65536, "Microsoft.UI.Xaml.WinUIContract")]
[Windows.Foundation.Metadata.ContractVersion(typeof(Microsoft.UI.Xaml.WinUIContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public sealed class EventTrigger : TriggerBase
Public NotInheritable Class EventTrigger
Inherits TriggerBase
- 继承
- 属性
示例
此 XAML 示例演示使用 FrameworkElement.Triggers 及其默认 FrameworkElement.Loaded 触发器行为来运行情节提要动画的基本结构。 此 XAML 使用其 XAML 内容属性语法和省略的不必要的属性元素标记,显示 EventTrigger 和 BeginStoryboard 容器元素与每个元素具有适当关系。
<Canvas Width="200" Height="200" x:Name="animatedcanvas" Background="Red">
<Canvas.Triggers>
<EventTrigger>
<BeginStoryboard>
<Storyboard x:Name="ColorStoryboard">
<!-- Animate the background of the canvas to green over 4 seconds. -->
<ColorAnimation Storyboard.TargetName="animatedcanvas"
Storyboard.TargetProperty="(Panel.Background).(SolidColorBrush.Color)"
To="Green" Duration="0:0:4"/>
</Storyboard>
</BeginStoryboard>
</EventTrigger>
</Canvas.Triggers>
</Canvas>
注解
通常不使用触发器、EventTrigger、 Actions 和 BeginStoryboard 。 这些 API 主要用于在最初用于 Microsoft Silverlight 的 XAML 中实现兼容性。 对于以前使用过事件触发器的大多数方案,请执行下列操作之一:
- 使用动画库中的内置动画。 请参阅 XAML 中的动画。
- 对于控件模板中的事件,请使用视觉状态和 VisualStateManager。 请参阅 XAML 控件模板。
- 对于特定于应用的 UI 动画,请在页面上定义 加载 处理程序。 此处理程序可以引用在页面级资源中定义的 Storyboard,并在该 Storyboard 上调用 Begin 方法。 请参阅 情节提要动画。
如果选择使用触发器,则Windows 运行时 XAML 中,事件触发器的默认行为和可用于调用 EventTrigger 的唯一事件是 FrameworkElement.Loaded。 由于这是默认行为,也是唯一启用的行为,因此不要设置 RoutedEvent 属性。 只需使用 XAML <EventTrigger>
。 如果显式 (不建议) 设置 RoutedEvent ,则唯一有效的 XAML 是 <EventTrigger RoutedEvent="FrameworkElement.Loaded">
。 不限定的“Loaded”或任何其他值会引发分析异常。 有关详细信息,请参阅 触发器。
构造函数
EventTrigger() |
初始化 EventTrigger 类的新实例。 |
属性
Actions |
获取此 EventTrigger 维护的 BeginStoryboard 对象的集合。 |
Dispatcher |
始终在Windows 应用 SDK应用中返回 |
DispatcherQueue |
|
RoutedEvent |
获取或设置启动触发器的事件的名称。 不常设置,请参阅备注。 |
方法
ClearValue(DependencyProperty) |
清除依赖属性的本地值。 (继承自 DependencyObject) |
GetAnimationBaseValue(DependencyProperty) |
返回为依赖属性建立的任何基值,该基值适用于动画未处于活动状态的情况。 (继承自 DependencyObject) |
GetValue(DependencyProperty) |
从 DependencyObject 返回依赖属性的当前有效值。 (继承自 DependencyObject) |
ReadLocalValue(DependencyProperty) |
如果设置了本地值,则返回依赖属性的本地值。 (继承自 DependencyObject) |
RegisterPropertyChangedCallback(DependencyProperty, DependencyPropertyChangedCallback) |
注册通知函数,用于侦听此 DependencyObject 实例上对特定 DependencyProperty 的更改。 (继承自 DependencyObject) |
SetValue(DependencyProperty, Object) |
设置 DependencyObject 上依赖属性的本地值。 (继承自 DependencyObject) |
UnregisterPropertyChangedCallback(DependencyProperty, Int64) |
取消以前通过调用 RegisterPropertyChangedCallback 注册的更改通知。 (继承自 DependencyObject) |