IntersectionDetail Enumeración
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Proporciona información sobre la intersección entre las geometrías de GeometryHitTestParameters y del objeto visual al que se obtuvo acceso.
public enum class IntersectionDetail
public enum IntersectionDetail
type IntersectionDetail =
Public Enum IntersectionDetail
- Herencia
Campos
Empty | 1 | El parámetro de la prueba de posicionamiento Geometry y el objeto visual de destino, o geometría, no forman una intersección. |
FullyContains | 3 | El parámetro de la prueba de posicionamiento Geometry se encuentra totalmente dentro del límite del objeto visual de destino o geometría. |
FullyInside | 2 | El objeto visual de destino o geometría está totalmente dentro del parámetro de la prueba de posicionamiento Geometry. |
Intersects | 4 | El parámetro de la prueba de posicionamiento Geometry y el objeto visual de destino, o geometría, forman una intersección. Esto significa que los dos elementos están superpuestos sin que ninguno de los dos contenga el otro. |
NotCalculated | 0 | El valor de IntersectionDetail no se calcula. |
Ejemplos
En el ejemplo siguiente se muestra cómo usar la IntersectionDetail propiedad de GeometryHitTestResult.
// Return the result of the hit test to the callback.
public HitTestResultBehavior MyHitTestResultCallback(HitTestResult result)
{
// Retrieve the results of the hit test.
IntersectionDetail intersectionDetail = ((GeometryHitTestResult)result).IntersectionDetail;
switch (intersectionDetail)
{
case IntersectionDetail.FullyContains:
// Add the hit test result to the list that will be processed after the enumeration.
hitResultsList.Add(result.VisualHit);
return HitTestResultBehavior.Continue;
case IntersectionDetail.Intersects:
// Set the behavior to return visuals at all z-order levels.
return HitTestResultBehavior.Continue;
case IntersectionDetail.FullyInside:
// Set the behavior to return visuals at all z-order levels.
return HitTestResultBehavior.Continue;
default:
return HitTestResultBehavior.Stop;
}
}
' Return the result of the hit test to the callback.
Public Function MyHitTestResultCallback(ByVal result As HitTestResult) As HitTestResultBehavior
' Retrieve the results of the hit test.
Dim intersectionDetail As IntersectionDetail = (CType(result, GeometryHitTestResult)).IntersectionDetail
Select Case intersectionDetail
Case IntersectionDetail.FullyContains
' Add the hit test result to the list that will be processed after the enumeration.
hitResultsList.Add(result.VisualHit)
Return HitTestResultBehavior.Continue
Case IntersectionDetail.Intersects
' Set the behavior to return visuals at all z-order levels.
Return HitTestResultBehavior.Continue
Case IntersectionDetail.FullyInside
' Set the behavior to return visuals at all z-order levels.
Return HitTestResultBehavior.Continue
Case Else
Return HitTestResultBehavior.Stop
End Select
End Function
Comentarios
En la ilustración siguiente se muestra la relación entre la geometría de la prueba de posicionamiento (el círculo azul) y la geometría visual (el cuadrado rojo).
Intersección entre geometría de prueba de posicionamiento y geometría visual durante las pruebas de posicionamiento