Skip to content

Latest commit

 

History

History
57 lines (42 loc) · 3.55 KB

eventtrigger.md

File metadata and controls

57 lines (42 loc) · 3.55 KB
-api-id -api-type
T:Microsoft.UI.Xaml.EventTrigger
winrt class

Microsoft.UI.Xaml.EventTrigger

-description

Represents a trigger that applies a set of actions (animation storyboards) in response to an event. Not commonly used. See Remarks.

-xaml-syntax

<EventTrigger>
  oneOrMoreBeginStoryboards
</EventTrigger>

-remarks

Triggers, EventTrigger, Actions and BeginStoryboard are not commonly used. These API mainly exist for compatibility in XAML originally used for Microsoft Silverlight. For most scenarios where event triggers were used previously, do one of these:

If you do choose to use Triggers, in Windows Runtime XAML, the default behavior for event triggers and the only event that can be used to invoke an EventTrigger is FrameworkElement.Loaded. Because that's both the default and the only enabled behavior, don't set the RoutedEvent attribute. Just use the XAML <EventTrigger>. If you set RoutedEvent explicitly (not recommended), the only XAML that works is <EventTrigger RoutedEvent="FrameworkElement.Loaded">. Unqualified "Loaded", or any other value, throws a parse exception. For more info, see Triggers.

-examples

This XAML example shows the basic structure for using FrameworkElement.Triggers with its default FrameworkElement.Loaded trigger behavior to run a storyboarded animation. This XAML shows the EventTrigger and BeginStoryboard container elements in proper relationship with each using their XAML content property syntax and unnecessary property element tags omitted.

<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>

-see-also

TriggerBase, Triggers, XAML Control templates