RoutedEventArgs.Handled Propriété
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.
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 HandledEventsToo
true
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é true
et de modifier les arguments d’événement en remplaçant Handledfalse
par . 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 à
Commentaires
https://aka.ms/ContentUserFeedback.
Bientôt disponible : Tout au long de 2024, nous allons supprimer progressivement GitHub Issues comme mécanisme de commentaires pour le contenu et le remplacer par un nouveau système de commentaires. Pour plus d’informations, consultezEnvoyer et afficher des commentaires pour