Auf Englisch lesen

Teilen über


Visual.TransformToVisual(Visual) Methode

Definition

Gibt eine Transformation zurück, mit der Koordinaten des Visual in das angegebene visuelle Objekt transformiert werden können.

C#
public System.Windows.Media.GeneralTransform TransformToVisual(System.Windows.Media.Visual visual);

Parameter

visual
Visual

Das Visual, in das die Koordinaten transformiert werden.

Gibt zurück

Ein Wert vom Typ GeneralTransform.

Ausnahmen

visual ist null.

Die visuellen Objekte sind nicht aufeinander bezogen.

Beispiele

Im folgenden Markupbeispiel wird ein TextBlock gezeigt, der in einem StackPanel-Objekt enthalten ist.

XAML
<StackPanel Name="myStackPanel" Margin="8">
  <TextBlock Name="myTextBlock" Margin="4" Text="Hello, world" />
</StackPanel>

Das folgende Codebeispiel zeigt, wie Sie mit der TransformToVisual-Methode den Offset von StackPanel relativ zu dessen untergeordnetem Element TextBlock abrufen können. Die Offsetwerte sind innerhalb des zurückgegebenen GeneralTransform-Werts enthalten.

C#
// Return the general transform for the specified visual object.
GeneralTransform generalTransform1 = myStackPanel.TransformToVisual(myTextBlock);

// Retrieve the point value relative to the child.
Point currentPoint = generalTransform1.Transform(new Point(0, 0));

Der Offset berücksichtigt die Margin-Werte für alle Objekte. In diesem Fall sind X und Y -4. Die Offsetwerte sind negative Werte, da das übergeordnete Objekt relativ zum untergeordneten Objekt negativ versetzt ist.

Hinweise

Die TransformToAncestor Methoden und TransformToDescendant können auch verwendet werden, um eine Transformation für ein visuelles Objekt zurückzugeben.

Gilt für:

Produkt Versionen
.NET Framework 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9, 10