RoutedEventArgs.Handled Propriété

Définition

Obtient ou définit une valeur qui indique l’état actuel de la gestion des événements pour un événement routé le long de son itinéraire.

public:
 property bool Handled { bool get(); void set(bool value); };
public bool Handled { [System.Security.SecurityCritical] get; [System.Security.SecurityCritical] set; }
public bool Handled { get; set; }
[<get: System.Security.SecurityCritical>]
[<set: System.Security.SecurityCritical>]
member this.Handled : bool with get, set
member this.Handled : bool with get, set
Public Property Handled As Boolean

Valeur de propriété

Pour la définition, affectez la valeur true si l’événement doit être marqué comme gérée ; sinon, false. Pour la lecture, true indique qu’un gestionnaire de classe (ou un gestionnaire d’instance le long de l’itinéraire) a déjà marqué cet événement comme géré. false indique qu’aucun gestionnaire n’a marqué l’événement comme géré.

La valeur par défaut est false.

Attributs

Exemples

L’exemple suivant implémente un gestionnaire d’événements qui marque l’événement géré.

protected override void OnPreviewMouseRightButtonDown(System.Windows.Input.MouseButtonEventArgs e)
{
    e.Handled = true; //suppress the click event and other leftmousebuttondown responders
    MyEditContainer ec = (MyEditContainer)e.Source;
    if (ec.EditState)
    { ec.EditState = false; }
    else
    { ec.EditState = true; }
    base.OnPreviewMouseRightButtonDown(e);
}
Protected Overrides Sub OnPreviewMouseRightButtonDown(ByVal e As System.Windows.Input.MouseButtonEventArgs)
    e.Handled = True 'suppress the click event and other leftmousebuttondown responders
    Dim ec As MyEditContainer = CType(e.Source, MyEditContainer)
    If ec.EditState Then
        ec.EditState = False
    Else
        ec.EditState = True
    End If
    MyBase.OnPreviewMouseRightButtonDown(e)
End Sub

Remarques

Le marquage de l’événement géré limite la visibilité de l’événement routé aux écouteurs le long de l’itinéraire de l’événement. L’événement continue de parcourir le reste de l’itinéraire, mais seuls les gestionnaires spécifiquement ajoutés avec dans HandledEventsTootrue l’appel de AddHandler(RoutedEvent, Delegate, Boolean) méthode seront appelés en réponse. Les gestionnaires par défaut sur les écouteurs instance (tels que ceux exprimés en XAML)) ne sont pas appelés. La gestion des événements marqués gérés n’est pas un scénario courant.

Si vous êtes un auteur de contrôle qui définit vos propres événements, les décisions que vous prenez concernant la gestion des événements au niveau de la classe auront un impact sur les utilisateurs de votre contrôle, ainsi que sur tous les utilisateurs de contrôles dérivés et potentiellement d’autres éléments qui sont contenus par votre contrôle ou qui contiennent votre contrôle. Pour plus d’informations, consultez Marquage des événements routés comme gérés et gestion de classe.

Dans de très rares cas, il est approprié de gérer les événements où Handled est marqué trueet de modifier les arguments d’événement en remplaçant Handledfalsepar . Cela peut être nécessaire dans certains domaines des événements d’entrée des contrôles, tels que la gestion des clés par rapport à TextInput où les événements d’entrée de KeyDown bas niveau et de haut niveau rivalisent pour la gestion, et chacun tente de travailler avec une stratégie de routage différente.

S’applique à