Este artículo se tradujo automáticamente. Para ver el artículo en inglés, active la casilla Inglés. Además, puede mostrar el texto en inglés en una ventana emergente si mueve el puntero del mouse sobre el texto.
Traducción
Inglés

Clase GeometryHitTestParameters

 

Publicado: octubre de 2016

Especifica Geometry como el parámetro que se usará para las pruebas de posicionamiento de un árbol visual.

Espacio de nombres:   System.Windows.Media
Ensamblado:  PresentationCore (en PresentationCore.dll)

System.Object
  System.Windows.Media.HitTestParameters
    System.Windows.Media.GeometryHitTestParameters

public class GeometryHitTestParameters : HitTestParameters

NombreDescripción
System_CAPS_pubmethodGeometryHitTestParameters(Geometry)

Inicializa una nueva instancia de la clase GeometryHitTestParameters, mediante la clase Geometry especificada.

NombreDescripción
System_CAPS_pubpropertyHitGeometry

Obtiene la Geometry que define la geometría de la prueba de posicionamiento para esta instancia GeometryHitTestParameters.

NombreDescripción
System_CAPS_pubmethodEquals(Object)

Determina si el objeto especificado es igual al objeto actual.(Heredado de Object).

System_CAPS_protmethodFinalize()

Permite que un objeto intente liberar recursos y realizar otras operaciones de limpieza antes de ser reclamado por el recolector de basura. (Heredado de Object).

System_CAPS_pubmethodGetHashCode()

Sirve como la función hash predeterminada.(Heredado de Object).

System_CAPS_pubmethodGetType()

Obtiene el Type de la instancia actual.(Heredado de Object).

System_CAPS_protmethodMemberwiseClone()

Crea una copia superficial del Object actual.(Heredado de Object).

System_CAPS_pubmethodToString()

Devuelve una cadena que representa al objeto actual. (Heredado de Object).

Con el GeometryHitTestParameters (clase), puede usar un Geometry valor para la prueba de posicionamiento, para determinar si algún objeto visual forma una intersección con el Geometry valor.

También puede presionar prueba con un Point valor mediante la creación de un PointHitTestParameters objeto.

System_CAPS_noteNota

Windows Presentation Foundation (WPF) la prueba de posicionamiento sólo tiene en cuenta el área rellena de una geometría durante una prueba de posicionamiento. Si crea un punto de Geometry, la prueba de posicionamiento no formará ninguna intersección porque un punto no tiene área.

En el ejemplo siguiente se muestra cómo configurar una prueba de posicionamiento con GeometryHitTestParameters para el HitTest (método). El Point valor que se pasa a la OnMouseDown método se utiliza para crear un Geometry objeto con el fin de ampliar el intervalo de la prueba de posicionamiento.

// 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();
    }
}

El IntersectionDetail propiedad de GeometryHitTestResult proporciona información acerca de los resultados de una prueba de posicionamiento que utiliza un Geometry como un impacto en el parámetro de la prueba. La siguiente ilustración muestra la relación entre la geometría de la prueba de posicionamiento (círculo azul) y el objeto de destino (cuadrado rojo).

Diagrama de IntersectionDetail usado en prueba de posicionamiento

Intersección entre el objeto de geometría y de destino de la prueba de posicionamiento

.NET Framework
Disponible desde 3.0

Cualquier miembro ( Compartido en Visual Basic) estático público de este tipo es seguro para subprocesos. No se garantiza que los miembros de instancia sean seguros para subprocesos.

Volver al principio
Mostrar: