RoutedEventArgs class

Contains state information and event data associated with a routed event.




public class RoutedEventArgs


The RoutedEventArgs class has these types of members:


The RoutedEventArgs class has these constructors.

RoutedEventArgs Initializes a new instance of the RoutedEventArgs class.



The RoutedEventArgs class inherits methods from the Object class.


The RoutedEventArgs class has these properties.

PropertyAccess typeDescription


Read-onlyGets a reference to the object that raised the event. This is often a template part of a control rather than an element that was declared in your app UI.



RoutedEventArgs is a common event data type used for base element events in Windows Store app using C++, C#, or Visual Basic. Generally RoutedEventArgs as the event data type indicates that the event with this event data is a routed event, although there are some exceptions. For more info on routed events and how to handle them, see Events and routed events overview.

The API that RoutedEventArgs adds to a generalized event data set is OriginalSource. OriginalSource can be useful for determining the element that first raised the event for hit testing and event routing scenarios, but there are also times where the sender from the delegate signature is the more useful source object reference for a handler. For more info, see Events and routed events overview.

RoutedEventArgs and the Handled property

If you're familiar with Windows Presentation Foundation (WPF), you might know that WPF declares a property named Handled on the RoutedEventArgs class. Certain routed event data classes in the Windows Runtime also define a Handled property, and you use it the same way you did in WPF (it influences the event route from within your handler.) However, for Windows Runtime and also for Microsoft Silverlight this behavior is specific only to certain routed events rather than all routed events (as is true in WPF). For example, you can set Handled if you are handling a pointer event and the event data class is PointerRoutedEventArgs, but you can't set Handled for a Loaded event where the event data is a RoutedEventArgs instance.

RoutedEventArgs derived classes

RoutedEventArgs is the parent class for several immediately derived classes that define event data for Windows Runtime events involving UI elements. Not all of the events where the classes provide data are necessarily routed events as defined in Events and routed events overview. But many are. The ones that aren't sometimes have the event data derived from RoutedEventArgs for compatibility reasons.

Requirements (Windows 10 device family)

Device family

Universal, introduced version 10.0.10240.0

API contract

Windows.Foundation.UniversalApiContract, introduced version 1.0


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



Requirements (Windows 8.x and Windows Phone 8.x)

Minimum supported client

Windows 8 [Windows Store apps only]

Minimum supported server

Windows Server 2012 [Windows Store apps only]

Minimum supported phone

Windows Phone 8.1 [Windows Runtime apps only]


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





See also

Events and routed events overview



© 2015 Microsoft