ContainerVisual.HitTest 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
返回命中测试的最顶端可视对象。
重载
HitTest(Point) |
通过指定 Point 返回命中测试最顶端的可视对象。 |
HitTest(HitTestFilterCallback, HitTestResultCallback, HitTestParameters) |
使用 HitTestFilterCallback 和 HitTestResultCallback 对象启动 ContainerVisual 上的命中测试。 |
HitTest(Point)
通过指定 Point 返回命中测试最顶端的可视对象。
public:
System::Windows::Media::HitTestResult ^ HitTest(System::Windows::Point point);
public System.Windows.Media.HitTestResult HitTest (System.Windows.Point point);
override this.HitTest : System.Windows.Point -> System.Windows.Media.HitTestResult
member this.HitTest : System.Windows.Point -> System.Windows.Media.HitTestResult
Public Function HitTest (point As Point) As HitTestResult
参数
- point
- Point
命中测试的点值。
返回
以 HitTestResult 类型返回的视觉效果的命中测试结果。
示例
以下示例演示如何从 HitTest 方法检索HitTestResult返回值。
// Capture the mouse event and hit test the coordinate point value against
// the child visual objects.
void MyVisualHost_MouseLeftButtonUp(object sender, System.Windows.Input.MouseButtonEventArgs e)
{
// Retrieve the coordinates of the mouse button event.
Point pt = e.GetPosition((UIElement)sender);
// Initiate the hit test on the ContainerVisual's visual tree.
HitTestResult result = _containerVisual.HitTest(pt);
// Perform the action on the hit visual.
if (result.VisualHit != null)
{
ProcessHitVisual((Visual)result.VisualHit);
}
}
' Capture the mouse event and hit test the coordinate point value against
' the child visual objects.
Private Sub MyVisualHost_MouseLeftButtonUp(ByVal sender As Object, ByVal e As System.Windows.Input.MouseButtonEventArgs)
' Retrieve the coordinates of the mouse button event.
Dim pt As Point = e.GetPosition(CType(sender, UIElement))
' Initiate the hit test on the ContainerVisual's visual tree.
Dim result As HitTestResult = _containerVisual.HitTest(pt)
' Perform the action on the hit visual.
If result.VisualHit IsNot Nothing Then
ProcessHitVisual(CType(result.VisualHit, Visual))
End If
End Sub
注解
VisualHit返回值的 属性表示命中Visual的对象。
适用于
HitTest(HitTestFilterCallback, HitTestResultCallback, HitTestParameters)
使用 HitTestFilterCallback 和 HitTestResultCallback 对象启动 ContainerVisual 上的命中测试。
public:
void HitTest(System::Windows::Media::HitTestFilterCallback ^ filterCallback, System::Windows::Media::HitTestResultCallback ^ resultCallback, System::Windows::Media::HitTestParameters ^ hitTestParameters);
public void HitTest (System.Windows.Media.HitTestFilterCallback filterCallback, System.Windows.Media.HitTestResultCallback resultCallback, System.Windows.Media.HitTestParameters hitTestParameters);
override this.HitTest : System.Windows.Media.HitTestFilterCallback * System.Windows.Media.HitTestResultCallback * System.Windows.Media.HitTestParameters -> unit
member this.HitTest : System.Windows.Media.HitTestFilterCallback * System.Windows.Media.HitTestResultCallback * System.Windows.Media.HitTestParameters -> unit
Public Sub HitTest (filterCallback As HitTestFilterCallback, resultCallback As HitTestResultCallback, hitTestParameters As HitTestParameters)
参数
- filterCallback
- HitTestFilterCallback
允许在处理命中测试结果时忽略无关的可视化树部分的委托。
- resultCallback
- HitTestResultCallback
用于控制返回命中测试信息的委托。
- hitTestParameters
- HitTestParameters
定义命中测试的参数集。
注解
参数 filterCallback
可以为 null,在这种情况下,将忽略它。 如果 filterCallback
不是 null
,则会在 之前 resultCallback
调用它。