Sdílet prostřednictvím


GeometryHitTestParameters Třída

Definice

Určuje Geometry jako parametr, který se má použít pro testování vizuálního stromu.

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
Dědičnost
GeometryHitTestParameters

Příklady

Následující příklad ukazuje, jak nastavit test hitu pomocí GeometryHitTestParameters metody HitTest . Hodnota Point předaná OnMouseDown metodě se používá k vytvoření objektu Geometry k rozšíření rozsahu testu hitu.

// 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

Vlastnost IntersectionDetail GeometryHitTestResult poskytuje informace o výsledcích testu hitu, který používá Geometry jako parametr testu hit. Následující obrázek znázorňuje vztah mezi geometrií testu hitu (modrým kruhem) a cílovým objektem (červený čtverec).

Diagram průsečíku použitého při testování hitů
Průnik mezi testovací geometrií a cílovým objektem

Poznámky

GeometryHitTestParameters S třídou můžete použít Geometry hodnotu pro testování, abyste zjistili, zda jakýkoli vizuální objekt protíná s Geometry hodnotou.

Můžete také provést test s Point hodnotou vytvořením objektu PointHitTestParameters .

Poznámka

Windows Presentation Foundation (WPF) testování hitů považuje pouze vyplněnou oblast geometrie během testu hitu. Pokud vytvoříte bod Geometry, test hitu neprotíná nic, protože bod nemá žádnou oblast.

Konstruktory

GeometryHitTestParameters(Geometry)

Inicializuje novou instanci GeometryHitTestParameters třídy pomocí zadané Geometry.

Vlastnosti

HitGeometry

Geometry Získá ten, který definuje geometrii testu hitu pro tuto GeometryHitTestParameters instanci.

Metody

Equals(Object)

Určí, zda se zadaný objekt rovná aktuálnímu objektu.

(Zděděno od Object)
GetHashCode()

Slouží jako výchozí funkce hash.

(Zděděno od Object)
GetType()

Type Získá aktuální instanci.

(Zděděno od Object)
MemberwiseClone()

Vytvoří použádnou kopii aktuálního souboru Object.

(Zděděno od Object)
ToString()

Vrátí řetězec, který představuje aktuální objekt.

(Zděděno od Object)

Platí pro