Freigeben über


IntersectionDetail Enumeration

Definition

Stellt Informationen über die Schnittmenge zwischen den Geometrien in der GeometryHitTestParameters und dem visuellen Element bereit, das getroffen wurde.

public enum class IntersectionDetail
public enum IntersectionDetail
type IntersectionDetail = 
Public Enum IntersectionDetail
Vererbung
IntersectionDetail

Felder

Name Wert Beschreibung
NotCalculated 0

Der IntersectionDetail Wert wird nicht berechnet.

Empty 1

Der Geometry Treffertestparameter und die visuelle Zielgröße oder Geometrie schneiden sich nicht.

FullyInside 2

Das visuelle Ziel oder die Geometrie befindet sich vollständig innerhalb des Geometry Treffertestparameters.

FullyContains 3

Der Geometry Treffertestparameter ist vollständig innerhalb der Grenze der visuellen Oder Geometrie des Ziels enthalten.

Intersects 4

Der Geometry Treffertestparameter und die visuelle Zielgeometrie oder Geometrie schneiden sich. Dies bedeutet, dass sich die beiden Elemente überlappen, aber keines der anderen Elemente enthält.

Beispiele

Das folgende Beispiel zeigt, wie die IntersectionDetail Eigenschaft von 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

Hinweise

Die folgende Abbildung zeigt die Beziehung zwischen der Treffertestgeometrie (dem blauen Kreis) und der visuellen Geometrie (das rote Quadrat).

Diagramm von IntersectionDetail, das in Treffertests verwendet Schnittmenge zwischen Treffertestgeometrie und visueller Geometrie während der Treffertests

Gilt für: