我正在创建一个自定义控件,可以对其子项进行测试。我打算重写HitTestCore
方法以返回多个控件,这些控件位于Geometric区域内或与Geometric区域相交。只是想知道是否有其他人尝试过这个。你有什么指示吗?或者是否有其他方法可以做到这一点(实际上没有覆盖HitTestCore
方法)?在此先感谢您的帮助。 :)
答案 0 :(得分:0)
所以,我能够得到多个控件似乎我不需要覆盖HitTestCore
方法。
我创建了一个HitTestFilterCallback
,每当它点击CheckBox
(这是我正在测试的控件类型)时,我将其保存到名为_hitTestResults
的列表中。但我不确定这是否是正确的方法:S
这是我做的:
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;
}