GeometryHitTestParameters 類別

定義

指定 Geometry 作為參數,以用於點擊測試視覺化樹狀結構。

public ref class GeometryHitTestParameters : System::Windows::Media::HitTestParameters
public class GeometryHitTestParameters : System.Windows.Media.HitTestParameters
type GeometryHitTestParameters = class
    inherit HitTestParameters
Public Class GeometryHitTestParameters
Inherits HitTestParameters
繼承
GeometryHitTestParameters

範例

下列範例示範如何使用 方法來設定點擊測試 GeometryHitTestParametersHitTestPoint傳遞至 OnMouseDown 方法的值是用來建立 Geometry 物件,以展開點擊測試的範圍。

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

    // Expand the hit test area by creating a geometry centered on the hit test point.
    EllipseGeometry expandedHitTestArea = new EllipseGeometry(pt, 10.0, 10.0);

    // 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(myControl, null,
        new HitTestResultCallback(MyHitTestResultCallback),
        new GeometryHitTestParameters(expandedHitTestArea));

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

    ' Expand the hit test area by creating a geometry centered on the hit test point.
    Dim expandedHitTestArea As New EllipseGeometry(pt, 10.0, 10.0)

    ' 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(myControl, Nothing, New HitTestResultCallback(AddressOf MyHitTestResultCallback), New GeometryHitTestParameters(expandedHitTestArea))

    ' Perform actions on the hit test results list.
    If hitResultsList.Count > 0 Then
        ProcessHitTestResultsList()
    End If
End Sub

IntersectionDetail 屬性 GeometryHitTestResult 提供使用 Geometry 做為點擊測試參數之點擊測試結果的相關資訊。 下圖顯示點擊測試幾何 (藍色圓圈) 與目標物件 (紅色方塊) 之間的關聯性。

點擊測試中使用的交集圖點擊測試
點擊測試幾何與目標物件之間的交集

備註

GeometryHitTestParameters透過 類別,您可以使用 Geometry 值進行點擊測試,以判斷是否有任何視覺物件與 Geometry 值交集。

您也可以藉由建立 PointHitTestParameters 物件來使用值來點擊測試 Point

注意

Windows Presentation Foundation (WPF) 點擊測試只會考慮點擊測試期間幾何的填滿區域。 如果您建立點 Geometry ,則點擊測試不會交集任何專案,因為某個點沒有區域。

建構函式

GeometryHitTestParameters(Geometry)

使用指定的 GeometryGeometryHitTestParameters 類別的新執行個體初始化。

屬性

HitGeometry

取得 Geometry,其定義 GeometryHitTestParameters 執行個體之點擊測試的幾何。

方法

Equals(Object)

判斷指定的物件是否等於目前的物件。

(繼承來源 Object)
GetHashCode()

做為預設雜湊函式。

(繼承來源 Object)
GetType()

取得目前執行個體的 Type

(繼承來源 Object)
MemberwiseClone()

建立目前 Object 的淺層複製。

(繼承來源 Object)
ToString()

傳回代表目前物件的字串。

(繼承來源 Object)

適用於