public ref class EventTrigger : System::Windows::TriggerBase, System::Windows::Markup::IAddChild
[System.Windows.Markup.ContentProperty("Actions")]
public class EventTrigger : System.Windows.TriggerBase, System.Windows.Markup.IAddChild
[<System.Windows.Markup.ContentProperty("Actions")>]
type EventTrigger = class
inherit TriggerBase
interface IAddChild
Public Class EventTrigger
Inherits TriggerBase
Implements IAddChild
EventTrigger
此範例示範如何使用樣式中的事件觸發程式,以動畫顯示
MouseEnter
的 和
MouseLeave
事件
FrameworkElement
。 在此範例中, 的
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>
Trigger
物件具有 、
Setters
EnterActions
、 和
ExitActions
屬性,這些屬性會根據特定屬性的狀態套用變更或動作,而
EventTrigger
物件會在發生指定的路由事件時啟動一組
Actions
。 例如,當滑鼠指標位於特定使用者介面上方時,您可能想要使用
EventTrigger
來啟動一組動畫, (UI) 控制項。 不同于
Trigger
,
EventTrigger
沒有終止狀態的概念,因此一旦引發事件的條件不再成立,就不會復原動作。
請注意,使用
EventTrigger
時,您必須選擇不會干擾控制項固有行為的事件。 控制項,例如
Button
或
TextBox
對使用者輸入事件執行特定動作,例如滑鼠點選和鍵盤事件。 例如,如果您要設定按鈕的樣式,並嘗試將
MouseDown
事件設定為
RoutedEvent
的
EventTrigger
,則永遠不會套用 ,
EventTrigger
因為事件會先由按鈕處理。 相反地
PreviewMouseDown
,您可以使用 事件或不同的事件。
使用資料系結時,如果您使用
TargetUpdated
事件,則必須將 物件的值
Binding
設定
NotifyOnTargetUpdated
為
true
,才能引發事件。
TriggerAction
將子系新增至
EventTrigger
物件,會隱含地將它新增至
TriggerActionCollection
物件的
EventTrigger
。
強制轉型所指定相依性屬性的值。 完成方式是叫用存在於呼叫
DependencyObject
之相依性屬性的屬性中繼資料中所指定的任何
CoerceValueCallback
函式。
(繼承來源
DependencyObject
)