有没有一种WPF获取MouseMove事件下鼠标下的元素数组的方法?WPF获取鼠标下的元素
回答
从 “WPF Unleashed”,383页:
视觉命中测试可以告诉你 约所有
Visual
s表示相交 位置,[...]你必须使用[...]接受代理的[VisualTreeHelper.]HitTest
方法。在HitTest
的这个版本返回之前, 代表被调用一次,每个 相关的Visual
,从最上面的 开始并在最下面结束。
这样的回调的签名是
HitTestResultBehavior Callback(HitTestResult result)
并且它具有返回HitTestResultBehaviour.Continue
接收更多命中,如下所示(从MSDN上的链接的页):
// Return the result of the hit test to the callback.
public HitTestResultBehavior MyHitTestResult(HitTestResult result)
{
// Add the hit test result to the list that will be processed after the enumeration.
hitResultsList.Add(result.VisualHit);
// Set the behavior to return visuals at all z-order levels.
return HitTestResultBehavior.Continue;
}
欲了解更多信息,请查阅MSDN documentation for VisualTreeHelper.HitTest
。
链接示例中使用的重载([也可能直接在答案中复制] [http://meta.stackexchange.com/questions/8231/are-answers-that-just-contain-链接 - 其他地方真的很好答案))只能找到鼠标位置的最顶层元素,但是,**不是**鼠标下的元素数组。 – 2013-08-21 08:15:52
您也可以尝试使用Mouse.DirectlyOver属性获取是鼠标下的最顶部的元素。
这将**不提供鼠标下的元素数组,但实际上只返回最上面的元素。 – 2013-08-21 08:13:15
- 1. 如何获取鼠标捕获元素
- 2. WPF获取元素的ColumnSpan
- 3. WPF在viewmodel中获取鼠标坐标
- 4. 从鼠标光标下的像素获取alphachannel值
- 5. 在WPF中的鼠标下获取逻辑UIElement
- 6. 点击(鼠标按下)select元素
- 7. silverlight 3我如何获得鼠标下的元素
- 8. 在鼠标光标下获取字
- 9. Yui鼠标坐标元素
- 10. 获取MouseLeave事件后鼠标悬停的第一个元素
- 11. jQuery获取鼠标当前悬停的子元素
- 12. Javascript:获取鼠标相对于父元素的位置
- 13. 获取发生鼠标点击的html元素?
- 14. jQuery的鼠标悬停区域获取元素
- 15. 获取鼠标相对于元素内容区域的位置
- 16. 当鼠标悬停时,获取div内div的元素
- 17. 鼠标上的元素ID
- 18. 获取鼠标指针下的文本
- 19. 获取鼠标指针下的文本
- 20. 获取鼠标指针下的DIV列表(鼠标事件)
- 21. 获取点击的元素在WPF
- 22. 即使捕获鼠标,我如何获得鼠标位置的元素?
- 23. 如何阻止多个鼠标点击下一个窗口WPF中的元素?
- 24. 获取鼠标位置或元素位置
- 25. z-index = -1时,在画布元素中获取鼠标位置
- 26. 获取元素和ID,如果有鼠标悬停与jQuery
- 27. 热点可以通过鼠标获取DOM或jQuery元素吗?
- 28. window.onerror获取元素目标
- 29. 有什么办法在标准html元素上获取鼠标/光标图标
- 30. 获取tchart协调鼠标移动值/点击/鼠标按下
有关示例,请参见以下msdn链接(部分:使用命中测试结果回调)。 [http://msdn.microsoft.com/en-us/library/ms752097.aspx](http://msdn.microsoft.com/en-us/library/ms752097.aspx) – 2013-01-24 10:27:46