0 out of 9 rated this helpful - Rate this topic

RoutedEvent class

Represents a routed event to the Windows Runtime event system.

Inheritance

Object
  RoutedEvent

Syntax


public sealed class RoutedEvent : Object

Attributes

MarshalingBehaviorAttribute(Agile)
ThreadingAttribute(Both)
VersionAttribute(NTDDI_WIN8)
WebHostHiddenAttribute()

Members

The RoutedEvent class has these types of members:

Methods

The RoutedEvent class inherits methods from the Object class.

Remarks

For more info on how routed events work, see Events and routed events overview. The RoutedEvent type is part of the infrastructure for routed events, but you really don't use instances of RoutedEvent very much in typical Windows Runtime app programming.

The purpose of the RoutedEvent type is to serve as an identifier for the event system, similar to how DependencyProperty provides an identifier type for the dependency property system. UIElement includes several static read-only properties of type RoutedEvent, which are named using a naming pattern. Each RoutedEvent property is named after an event plus the suffix "Event", and each such property is the identifier for the routed event that its name begins with. For example, TappedEvent identifies the Tapped routed event to the event system.

For most app code usages, simply referencing the event by name in XAML or by its language-specific object-event relationship in code is all that's needed to reference an event, for purposes of adding or removing handlers. The RoutedEvent identifiers are only needed for the event handling scenario where you are attaching handlers you want invoked even when the routed events are previously marked as handled by other handlers. The APIs you use for this scenario, and the APIs that use a RoutedEvent value as a parameter, are UIElement.AddHandler and UIElement.RemoveHandler. For more info, see Events and routed events overview.

The Windows Runtime event system doesn't enable you to create a custom routed event; only the Windows Runtime itself can define an event such that it has the routed event behavior.

Events that use a RoutedEvent identifier

Here's a list of the routed events that have a RoutedEvent identifier and thus can use the UIElement.AddHandler technique we described:

Note  GotFocus and LostFocus act like routed events but don't have a RoutedEvent identifier, so you can't use AddHandler with them.

Examples

This example shows the basic syntax for wiring an event handler with AddHandler and handledEventsToo as true. In this case the event being wired is Tapped, and the RoutedEvent-type identifier used in the example is TappedEvent. The typical place to wire handlers is either Loaded for a page or OnApplyTemplate for a templated control.


        private void pageRoot_Tapped(object sender, TappedRoutedEventArgs e)
        {
            //implementation
        }
        private void pageRoot_Loaded_1(object sender, RoutedEventArgs e)
        {
            this.AddHandler(UIElement.TappedEvent, new TappedEventHandler(pageRoot_Tapped), true);
        }


Requirements

Minimum supported client

Windows 8 [Windows Store apps only]

Minimum supported server

Windows Server 2012 [Windows Store apps only]

Namespace

Windows.UI.Xaml
Windows::UI::Xaml [C++]

Metadata

Windows.winmd

See also

Events and routed events overview
AddHandler
UIElement.RemoveHandler
RoutedEventArgs

 

 

Build date: 1/31/2013

© 2013 Microsoft. All rights reserved.