VisualTreeHelper.HitTest VisualTreeHelper.HitTest VisualTreeHelper.HitTest VisualTreeHelper.HitTest Method

정의

적중 횟수 테스트의 맨 위 Visual 개체를 반환합니다.Returns the topmost Visual object of a hit test.

오버로드

HitTest(Visual, Point) HitTest(Visual, Point) HitTest(Visual, Point)

Point를 지정하여 적중 횟수 테스트의 최상위 Visual 개체를 반환합니다.Returns the topmost Visual object of a hit test by specifying a Point.

HitTest(Visual3D, HitTestFilterCallback, HitTestResultCallback, HitTestParameters3D) HitTest(Visual3D, HitTestFilterCallback, HitTestResultCallback, HitTestParameters3D) HitTest(Visual3D, HitTestFilterCallback, HitTestResultCallback, HitTestParameters3D) HitTest(Visual3D, HitTestFilterCallback, HitTestResultCallback, HitTestParameters3D)

호출자 정의 HitTestFilterCallbackHitTestResultCallback 메서드를 사용하여 지정된 Visual3D에서 적중 횟수 테스트를 시작합니다.Initiates a hit test on the specified Visual3D, with caller-defined HitTestFilterCallback and HitTestResultCallback methods.

HitTest(Visual, HitTestFilterCallback, HitTestResultCallback, HitTestParameters) HitTest(Visual, HitTestFilterCallback, HitTestResultCallback, HitTestParameters) HitTest(Visual, HitTestFilterCallback, HitTestResultCallback, HitTestParameters)

호출자 정의 HitTestFilterCallbackHitTestResultCallback 메서드를 사용하여 지정된 Visual에서 적중 횟수 테스트를 시작합니다.Initiates a hit test on the specified Visual, with caller-defined HitTestFilterCallback and HitTestResultCallback methods.

설명

사용 하는 오버 로드 된 메서드 HitTestResultCallbackHitTestFilterCallback 적중 횟수 테스트 하는 동안 추가 기능을 제공 하는 매개 변수:The overloaded methods that take HitTestResultCallback and HitTestFilterCallback as parameters provide additional functionality during hit testing:

  • 적중 횟수 테스트 하는 동안 시각적 트리 순회 제어에 참여할 수 있습니다.Allow you to participate in controlling the visual tree traversal during hit testing.

  • 사용 하면 모든 지점 또는 기 하 도형, 최상위 것 뿐 아니라 시각적 개체를 검색할 수 있습니다.Allow you to retrieve all of the visuals under the point or geometry, not just the topmost one.

HitTest(Visual, Point) HitTest(Visual, Point) HitTest(Visual, Point)

Point를 지정하여 적중 횟수 테스트의 최상위 Visual 개체를 반환합니다.Returns the topmost Visual object of a hit test by specifying a Point.

public:
 static System::Windows::Media::HitTestResult ^ HitTest(System::Windows::Media::Visual ^ reference, System::Windows::Point point);
public static System.Windows.Media.HitTestResult HitTest (System.Windows.Media.Visual reference, System.Windows.Point point);
static member HitTest : System.Windows.Media.Visual * System.Windows.Point -> System.Windows.Media.HitTestResult

매개 변수

reference
Visual Visual Visual Visual

적중 횟수 테스트에 대한 Visual입니다.The Visual to hit test.

point
Point Point Point Point

적중 횟수 테스트에 대한 지점 값입니다.The point value to hit test against.

반환

HitTestResult 형식으로 반환된 Visual 적중 횟수 테스트 결과입니다.The hit test result of the Visual, returned as a HitTestResult type.

예제

다음 예제에서는 사용 하는 방법을 보여 줍니다 합니다 HitTest 메서드를 적중 테스트 내에서 개체를 Canvas합니다.The following example shows how to use the HitTest method to hit test the objects within a Canvas.

// Respond to the left mouse button down event by initiating the hit test.
private void OnMouseLeftButtonDown(object sender, MouseButtonEventArgs e)
{
    // Retrieve the coordinate of the mouse position.
    Point pt = e.GetPosition((UIElement)sender);

    // Perform the hit test against a given portion of the visual object tree.
    HitTestResult result = VisualTreeHelper.HitTest(myCanvas, pt);

    if (result != null)
    {
        // Perform action on hit visual object.
    }
}
' Respond to the left mouse button down event by initiating the hit test.
Private Overloads Sub OnMouseLeftButtonDown(ByVal sender As Object, ByVal e As MouseButtonEventArgs)
	' Retrieve the coordinate of the mouse position.
	Dim pt As Point = e.GetPosition(CType(sender, UIElement))

	' Perform the hit test against a given portion of the visual object tree.
	Dim result As HitTestResult = VisualTreeHelper.HitTest(myCanvas, pt)

	If result IsNot Nothing Then
		' Perform action on hit visual object.
	End If
End Sub

설명

합니다 VisualHit 반환 값의 속성을 나타냅니다는 Visual 적중 된 개체입니다.The VisualHit property of the return value represents the Visual object that was hit.

참고

반환할 2D 시각적 트리에서 시작 하는 적중 횟수 테스트에 대 한 있기 RayHitTestResult, 3D 적중된 테스트 결과 개체는 합니다.It is possible for a hit test that starts in a 2D visual tree to return RayHitTestResult, which is a 3D hit test result object. 적중 횟수 테스트는 2D 시각적 트리에서 시작이 원활 하 게 정의 된 모든 3D 시각적 트리를 확장 합니다.Hit testing that starts in a 2D visual tree seamlessly extends into any defined 3D visual tree.

추가 정보

HitTest(Visual3D, HitTestFilterCallback, HitTestResultCallback, HitTestParameters3D) HitTest(Visual3D, HitTestFilterCallback, HitTestResultCallback, HitTestParameters3D) HitTest(Visual3D, HitTestFilterCallback, HitTestResultCallback, HitTestParameters3D) HitTest(Visual3D, HitTestFilterCallback, HitTestResultCallback, HitTestParameters3D)

호출자 정의 HitTestFilterCallbackHitTestResultCallback 메서드를 사용하여 지정된 Visual3D에서 적중 횟수 테스트를 시작합니다.Initiates a hit test on the specified Visual3D, with caller-defined HitTestFilterCallback and HitTestResultCallback methods.

public:
 static void HitTest(System::Windows::Media::Media3D::Visual3D ^ reference, System::Windows::Media::HitTestFilterCallback ^ filterCallback, System::Windows::Media::HitTestResultCallback ^ resultCallback, System::Windows::Media::Media3D::HitTestParameters3D ^ hitTestParameters);
public static void HitTest (System.Windows.Media.Media3D.Visual3D reference, System.Windows.Media.HitTestFilterCallback filterCallback, System.Windows.Media.HitTestResultCallback resultCallback, System.Windows.Media.Media3D.HitTestParameters3D hitTestParameters);
static member HitTest : System.Windows.Media.Media3D.Visual3D * System.Windows.Media.HitTestFilterCallback * System.Windows.Media.HitTestResultCallback * System.Windows.Media.Media3D.HitTestParameters3D -> unit
Public Shared Sub HitTest (reference As Visual3D, filterCallback As HitTestFilterCallback, resultCallback As HitTestResultCallback, hitTestParameters As HitTestParameters3D)

매개 변수

reference
Visual3D Visual3D Visual3D Visual3D

적중 횟수 테스트에 대한 Visual3D입니다.The Visual3D to hit test.

filterCallback
HitTestFilterCallback HitTestFilterCallback HitTestFilterCallback HitTestFilterCallback

적중 횟수 테스트 필터 콜백 값을 나타내는 메서드입니다.The method that represents the hit test filter callback value.

resultCallback
HitTestResultCallback HitTestResultCallback HitTestResultCallback HitTestResultCallback

적중 횟수 테스트 결과 콜백 값을 나타내는 메서드입니다.The method that represents the hit test result callback value.

hitTestParameters
HitTestParameters3D HitTestParameters3D HitTestParameters3D HitTestParameters3D

적중 테스트를 수행할 3차원 매개 변수 값입니다.The 3D parameter value to hit test against.

설명

합니다 filterCallback 매개 변수 수 null, 경우에 무시 됩니다.The filterCallback parameter can be null, in which case, it is ignored. 하는 경우 filterCallback 아닙니다 null, 보다 먼저 호출 됩니다 resultCallback합니다.If filterCallback is not null, it is invoked before resultCallback. resultCallbacknull이 될 수 없는 경우resultCallback cannot be null.

참고

반환할 2D 시각적 트리에서 시작 하는 적중 횟수 테스트에 대 한 있기 RayHitTestResult, 3D 적중된 테스트 결과 개체는 합니다.It is possible for a hit test that starts in a 2D visual tree to return RayHitTestResult, which is a 3D hit test result object. 적중 횟수 테스트는 2D 시각적 트리에서 시작이 원활 하 게 정의 된 모든 3D 시각적 트리를 확장 합니다.Hit testing that starts in a 2D visual tree seamlessly extends into any defined 3D visual tree.

HitTest(Visual, HitTestFilterCallback, HitTestResultCallback, HitTestParameters) HitTest(Visual, HitTestFilterCallback, HitTestResultCallback, HitTestParameters) HitTest(Visual, HitTestFilterCallback, HitTestResultCallback, HitTestParameters)

호출자 정의 HitTestFilterCallbackHitTestResultCallback 메서드를 사용하여 지정된 Visual에서 적중 횟수 테스트를 시작합니다.Initiates a hit test on the specified Visual, with caller-defined HitTestFilterCallback and HitTestResultCallback methods.

public:
 static void HitTest(System::Windows::Media::Visual ^ reference, System::Windows::Media::HitTestFilterCallback ^ filterCallback, System::Windows::Media::HitTestResultCallback ^ resultCallback, System::Windows::Media::HitTestParameters ^ hitTestParameters);
public static void HitTest (System.Windows.Media.Visual reference, System.Windows.Media.HitTestFilterCallback filterCallback, System.Windows.Media.HitTestResultCallback resultCallback, System.Windows.Media.HitTestParameters hitTestParameters);
static member HitTest : System.Windows.Media.Visual * System.Windows.Media.HitTestFilterCallback * System.Windows.Media.HitTestResultCallback * System.Windows.Media.HitTestParameters -> unit

매개 변수

reference
Visual Visual Visual Visual

적중 횟수 테스트에 대한 Visual입니다.The Visual to hit test.

filterCallback
HitTestFilterCallback HitTestFilterCallback HitTestFilterCallback HitTestFilterCallback

적중 횟수 테스트 필터 콜백 값을 나타내는 메서드입니다.The method that represents the hit test filter callback value.

resultCallback
HitTestResultCallback HitTestResultCallback HitTestResultCallback HitTestResultCallback

적중 횟수 테스트 결과 콜백 값을 나타내는 메서드입니다.The method that represents the hit test result callback value.

hitTestParameters
HitTestParameters HitTestParameters HitTestParameters HitTestParameters

적중 횟수 테스트에 대한 매개 변수 값입니다.The parameter value to hit test against.

예제

다음 예제에서는 사용 하는 방법을 보여 줍니다 합니다 HitTest 메서드를 적중 테스트 내에서 개체를 Canvas합니다.The following example shows how to use the HitTest method to hit test the objects within a Canvas.

// Respond to the right mouse button down event by setting up a hit test results callback.
private void OnMouseRightButtonDown(object sender, MouseButtonEventArgs e)
{
    // Retrieve the coordinate of the mouse position.
    Point pt = e.GetPosition((UIElement)sender);

    // Clear the contents of the list used for hit test results.
    hitResultsList.Clear();

    // Set up a callback to receive the hit test result enumeration.
    VisualTreeHelper.HitTest(myCanvas, null,
        new HitTestResultCallback(MyHitTestResult),
        new PointHitTestParameters(pt));

    // Perform actions on the hit test results list.
    if (hitResultsList.Count > 0)
    {
        Console.WriteLine("Number of Visuals Hit: " + hitResultsList.Count);
    }
}
' Respond to the right mouse button down event by setting up a hit test results callback.
Private Overloads Sub OnMouseRightButtonDown(ByVal sender As Object, ByVal e As MouseButtonEventArgs)
	' Retrieve the coordinate of the mouse position.
	Dim pt As Point = e.GetPosition(CType(sender, UIElement))

	' Clear the contents of the list used for hit test results.
	hitResultsList.Clear()

	' Set up a callback to receive the hit test result enumeration.
	VisualTreeHelper.HitTest(myCanvas, Nothing, New HitTestResultCallback(AddressOf MyHitTestResult), New PointHitTestParameters(pt))

	' Perform actions on the hit test results list.
	If hitResultsList.Count > 0 Then
		Console.WriteLine("Number of Visuals Hit: " & hitResultsList.Count)
	End If
End Sub
// 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;
}
' Return the result of the hit test to the callback.
Public Function MyHitTestResult(ByVal result As HitTestResult) As HitTestResultBehavior
	' 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
End Function

설명

합니다 filterCallback 매개 변수 수 null, 경우 무시 됩니다.The filterCallback parameter can be null, in which case it is ignored. 하는 경우 filterCallback 아닙니다 null, 보다 먼저 호출 됩니다 resultCallback합니다.If filterCallback is not null, it is invoked before resultCallback. resultCallbacknull이 될 수 없는 경우resultCallback cannot be null.

참고

반환할 2D 시각적 트리에서 시작 하는 적중 횟수 테스트에 대 한 있기 RayHitTestResult, 3D 적중된 테스트 결과 개체는 합니다.It is possible for a hit test that starts in a 2D visual tree to return RayHitTestResult, which is a 3D hit test result object. 적중 횟수 테스트는 2D 시각적 트리에서 시작이 원활 하 게 정의 된 모든 3D 시각적 트리를 확장 합니다.Hit testing that starts in a 2D visual tree seamlessly extends into any defined 3D visual tree.

추가 정보

적용 대상