Visual.TransformToDescendant(Visual) Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Gibt eine Transformation zurück, mit der Koordinaten des Visual in den angegebenen Nachfolger des visuellen Objekts transformiert werden können.
public:
System::Windows::Media::GeneralTransform ^ TransformToDescendant(System::Windows::Media::Visual ^ descendant);
public System.Windows.Media.GeneralTransform TransformToDescendant (System.Windows.Media.Visual descendant);
member this.TransformToDescendant : System.Windows.Media.Visual -> System.Windows.Media.GeneralTransform
Public Function TransformToDescendant (descendant As Visual) As GeneralTransform
Parameter
Gibt zurück
Ein Wert vom Typ GeneralTransform.
Ausnahmen
descendant
ist null
.
Das visuelle Element ist kein Vorgänger des descendant
für das visuelle Element.
Die visuellen Objekte sind nicht aufeinander bezogen.
Beispiele
Das folgende Markupbeispiel zeigt ein TextBlock Objekt, das in einem StackPanel Objekt enthalten ist.
<StackPanel Name="myStackPanel" Margin="8">
<TextBlock Name="myTextBlock" Margin="4" Text="Hello, world" />
</StackPanel>
Im folgenden Codebeispiel wird gezeigt, wie die TransformToDescendant Methode zum Abrufen des Offsets des StackPanel relativen elements verwendet TextBlockwird. Die Offsetwerte sind innerhalb des zurückgegebenen Werts GeneralTransform enthalten.
// Return the general transform for the specified visual object.
GeneralTransform generalTransform1 = myStackPanel.TransformToDescendant(myTextBlock);
// Retrieve the point value relative to the child.
Point currentPoint = generalTransform1.Transform(new Point(0, 0));
' Return the general transform for the specified visual object.
Dim generalTransform1 As GeneralTransform = myStackPanel.TransformToDescendant(myTextBlock)
' Retrieve the point value relative to the child.
Dim currentPoint As Point = generalTransform1.Transform(New Point(0, 0))
Der Offset berücksichtigt die Margin Werte für alle Objekte. In diesem Fall X ist -4 und Y ist -4. Die Offsetwerte sind negative Werte, da das übergeordnete Objekt relativ zum untergeordneten Objekt negativ versetzt wird.