Udostępnij za pośrednictwem


VisualTreeHelper.GetTransform(Visual) Metoda

Definicja

Transform Zwraca wartość dla elementu Visual.

public:
 static System::Windows::Media::Transform ^ GetTransform(System::Windows::Media::Visual ^ reference);
public static System.Windows.Media.Transform GetTransform (System.Windows.Media.Visual reference);
static member GetTransform : System.Windows.Media.Visual -> System.Windows.Media.Transform
Public Shared Function GetTransform (reference As Visual) As Transform

Parametry

reference
Visual

Wartość Visual przekształcenia jest zwracana.

Zwraca

Transform

Wartość Visualprzekształcenia elementu lub null , jeśli reference nie ma zdefiniowanego przekształcenia.

Przykłady

W poniższym przykładzie kodu pokazano, jak za pomocą GetTransform metody pobrać przekształcenie dla określonego obiektu wizualizacji.

// Return the transform for the specified visual object.
Transform transform = VisualTreeHelper.GetTransform(myDrawing);

// If there is no transform defined for the object, the return value is null.
if (transform != null)
{
    // Return the offset of the returned transform. The offset is relative to the parent of the visual object.
    Point pt = transform.Transform(new Point(0, 0));
}
' Return the transform for the specified visual object.
Dim transform As Transform = VisualTreeHelper.GetTransform(myDrawing)

' If there is no transform defined for the object, the return value is null.
If transform IsNot Nothing Then
    ' Return the offset of the returned transform. The offset is relative to the parent of the visual object.
    Dim pt As Point = transform.Transform(New Point(0, 0))
End If

Kod powinien zostać przetestowany null przed użyciem zwróconej wartości. Aby zwrócić przesunięcie zwróconej transformacji, użyj Transform metody . Wartość przesunięcia jest względna względem elementu nadrzędnego obiektu Visual.

Uwagi

Alternatywnie możesz użyć TransformToAncestor metody , aby zwrócić wartość przekształcenia dla przodka obiektu Visual. Ta metoda zawsze zwraca prawidłową transformację. W poniższym przykładzie kodu pokazano, jak używać TransformToAncestor metody.

// Return the general transform for the specified visual object.
GeneralTransform generalTransform1 = myTextBlock.TransformToAncestor((Visual)myTextBlock.Parent);

// Retrieve the point value relative to the parent.
Point currentPoint = generalTransform1.Transform(new Point(0, 0));
' Return the general transform for the specified visual object.
Dim generalTransform1 As GeneralTransform = myTextBlock.TransformToAncestor(CType(myTextBlock.Parent, Visual))

' Retrieve the point value relative to the parent.
Dim currentPoint As Point = generalTransform1.Transform(New Point(0, 0))

Dotyczy