Je crée un contrôle personnalisé qui ne teste pas sur ses enfants. Je prévois de surcharger la méthode HitTestCore
pour renvoyer plusieurs contrôles qui tombent à l'intérieur ou qui se croisent avec une région géométrique. Je me demandais si quelqu'un d'autre a essayé ça. Avez-vous des indications pour moi? Ou existe-t-il un autre moyen que je peux faire ceci (sans réellement surcharger la méthode HitTestCore
)? Merci d'avance pour votre aide. :)Overrriding Méthode HitTestCore pour détecter plusieurs contrôles dans WPF
0
A
Répondre
0
Donc, j'ai été en mesure d'obtenir plusieurs contrôles semble que je n'avais pas besoin de remplacer la méthode HitTestCore
.
J'ai créé un HitTestFilterCallback
et chaque fois qu'il a frappé sur un CheckBox
(qui était le type de contrôle que je testais frappé) je l'ai enregistré sur une liste appelée _hitTestResults
. Mais je ne suis pas sûr que ce soit la bonne façon de le faire: S
Voici ce que je l'ai fait:
HitTestFilterBehavior OnHitTestFilter(DependencyObject target)
{
if (target.GetType() == typeof(CheckBox))
{
_hitTestResults.Add(target as CheckBox); // add the hittest result
return HitTestFilterBehavior.ContinueSkipChildren;
}
else
return HitTestFilterBehavior.Continue;
}