RoutedEvent Classe
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Représente un événement routé vers le système d’événements Windows Runtime.
public ref class RoutedEvent sealed
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class RoutedEvent final
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
class RoutedEvent final
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public sealed class RoutedEvent
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
public sealed class RoutedEvent
Public NotInheritable Class RoutedEvent
- Héritage
- Attributs
Configuration requise pour Windows
Famille d’appareils |
Windows 10 (introduit dans 10.0.10240.0)
|
API contract |
Windows.Foundation.UniversalApiContract (introduit dans v1.0)
|
Exemples
Cet exemple montre la syntaxe de base pour le câblage d’un gestionnaire d’événements avec AddHandler et handledEventsToo comme true. Dans ce cas, l’événement câblé est Tapped, et l’identificateur de type RoutedEvent utilisé dans l’exemple est TappedEvent. L’emplacement classique pour les gestionnaires de câbles est Chargé pour une page ou OnApplyTemplate pour un contrôle avec modèle.
void MainPage::pageRoot_Tapped(Platform::Object^ sender, Windows::UI::Xaml::Input::TappedRoutedEventArgs^ e)
{
//implementation
}
void MainPage::pageRoot_Loaded(Platform::Object^ sender, Windows::UI::Xaml::RoutedEventArgs^ e)
{
this->AddHandler(UIElement::TappedEvent, ref new TappedEventHandler(this, &MainPage::pageRoot_Tapped), true);
}
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);
}
Private Sub Page_Tapped(sender As Object, e As TappedRoutedEventArgs)
' implementation
End Sub
Private Sub Page_Loaded_1(sender As Object, e As RoutedEventArgs)
Me.AddHandler(UIElement.TappedEvent, New TappedEventHandler(AddressOf Page_Tapped), True)
End Sub
Remarques
Notes
Le système d’événements Windows Runtime ne vous permet pas de créer un événement routé personnalisé ; seul le Windows Runtime lui-même peut définir un événement de sorte qu’il ait le comportement de l’événement routé.
Pour plus d’informations sur le fonctionnement des événements routés, consultez Vue d’ensemble des événements et des événements routés. Le type RoutedEvent fait partie de l’infrastructure des événements routés, mais vous n’utilisez pas RoutedEvent directement dans la programmation d’applications Windows Runtime standard.
L’objectif du type RoutedEvent est de servir d’identificateur pour le système d’événements Windows Runtime, de la même façon que DependencyProperty fournit un type d’identificateur pour le système de propriétés de dépendance. UIElement inclut plusieurs propriétés statiques en lecture seule de type RoutedEvent, qui sont nommées à l’aide d’un modèle de nommage. Chaque propriété RoutedEvent est nommée d’après un événement plus le suffixe « Event ». Chacune de ces propriétés est l’identificateur de l’événement routé par lequel son nom commence. Par exemple, TappedEvent identifie l’événement routé Tapped vers le système d’événements.
Pour la plupart des utilisations du code d’application, il suffit de référencer l’événement par son nom en XAML ou par son nom d’entité de code dans le code pour référencer un événement sur un objet, à des fins d’ajout ou de suppression de gestionnaires. Les identificateurs RoutedEvent ne sont nécessaires que lorsque vous attachez des gestionnaires qui doivent être appelés même lorsque les événements routés sont précédemment marqués comme gérés par le code système ou d’application. L’API que vous utilisez pour ce scénario et l’API qui utilise une valeur RoutedEvent en tant que paramètre sont UIElement.AddHandler et UIElement.RemoveHandler. Pour plus d’informations, consultez Vue d’ensemble des événements et des événements routés.
Événements qui utilisent un identificateur RoutedEvent
Voici une liste des événements routés qui ont un identificateur RoutedEvent et qui peuvent donc utiliser la technique UIElement.AddHandler que nous avons décrite :
- DoubleTapped
- DragEnter
- DragLeave
- DragOver
- Goutte
- Holding
- Keydown
- Keyup
- ManipulationCompleted
- ManipulationDelta
- ManipulationInertiaStarting
- ManipulationStarted
- ManipulationStarting
- PointerCanceled
- PointerCaptureLost
- PointerEntered
- PointerExited
- PointerMoved
- PointerPressed
- PointerReleased
- PointerWheelChanged
- RightTapped
- Tapped
Notes
GotFocus et LostFocus agissent comme des événements routés, mais n’ont pas d’identificateur RoutedEvent. Vous ne pouvez donc pas utiliser AddHandler avec eux.