0

我正在创建一个自定义控件,它确实对其子项进行了测试。我计划重写该HitTestCore方法以返回多个控件,这些控件位于几何区域内或与几何区域相交。只是想知道是否有人尝试过这个。你对我有什么指示吗?还是有另一种方法可以做到这一点(实际上不覆盖该HitTestCore方法)?提前感谢您的帮助。:)

4

1 回答 1

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;

    }
于 2009-07-29T07:07:42.813 回答