VisualTreeHelper.GetTransform(Visual) Метод

Определение

Возвращает значение Transform для 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

Параметры

reference
Visual

Объект Visual, для которого возвращается значение преобразования.

Возвращаемое значение

Transform

Значение преобразования объекта Visual или null, если преобразование для reference не определено.

Примеры

В следующем примере кода показано, как использовать GetTransform метод для получения преобразования для указанного визуального объекта.

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

Код должен протестироваться null перед использованием возвращаемого значения. Чтобы вернуть смещение возвращаемого преобразования, используйте Transform метод. Значение смещения относительно родительского элемента Visual.

Комментарии

Кроме того, можно использовать TransformToAncestor метод для возврата значения преобразования для предка объекта Visual. Этот метод всегда возвращает допустимое преобразование. В следующем примере кода показано, как использовать TransformToAncestor метод.

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

Применяется к