Visual.TransformToAncestor Metod
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Returnerar en transformering som kan användas för att transformera koordinater från Visual till angiven överordnad för det visuella objektet.
Överlagringar
| Name | Description |
|---|---|
| TransformToAncestor(Visual3D) |
Returnerar en transformering som kan användas för att transformera koordinater från Visual till angiven överordnad Visual3D för det visuella objektet. |
| TransformToAncestor(Visual) |
Returnerar en transformering som kan användas för att transformera koordinater från Visual till angiven överordnad Visual för det visuella objektet. |
TransformToAncestor(Visual3D)
public:
System::Windows::Media::Media3D::GeneralTransform2DTo3D ^ TransformToAncestor(System::Windows::Media::Media3D::Visual3D ^ ancestor);
public System.Windows.Media.Media3D.GeneralTransform2DTo3D TransformToAncestor(System.Windows.Media.Media3D.Visual3D ancestor);
member this.TransformToAncestor : System.Windows.Media.Media3D.Visual3D -> System.Windows.Media.Media3D.GeneralTransform2DTo3D
Public Function TransformToAncestor (ancestor As Visual3D) As GeneralTransform2DTo3D
Parametrar
Returer
En transformering som kan användas för att transformera koordinater från Visual till den angivna överordnad Visual3D för det visuella objektet.
Gäller för
TransformToAncestor(Visual)
public:
System::Windows::Media::GeneralTransform ^ TransformToAncestor(System::Windows::Media::Visual ^ ancestor);
public System.Windows.Media.GeneralTransform TransformToAncestor(System.Windows.Media.Visual ancestor);
member this.TransformToAncestor : System.Windows.Media.Visual -> System.Windows.Media.GeneralTransform
Public Function TransformToAncestor (ancestor As Visual) As GeneralTransform
Parametrar
Returer
Ett värde av typen GeneralTransform.
Undantag
ancestor är null.
ancestor är inte en överordnad till det visuella objektet.
De visuella objekten är inte relaterade.
Exempel
Följande markeringsexempel visar en TextBlock som är kapslad i två StackPanel objekt.
<Window xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" >
<StackPanel Margin="16">
<StackPanel Margin="8">
<TextBlock Name="myTextBlock" Margin="4" Text="Hello, world" />
</StackPanel>
</StackPanel>
</Window>
I följande kodexempel visas hur du använder TransformToAncestor metoden för att hämta förskjutningen för den TextBlock relativa till den innehållande Window. Förskjutningsvärdena finns i den returnerade GeneralTransform.
// Return the general transform for the specified visual object.
GeneralTransform generalTransform1 = myTextBlock.TransformToAncestor(this);
// 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(Me)
' Retrieve the point value relative to the parent.
Dim currentPoint As Point = generalTransform1.Transform(New Point(0, 0))
Förskjutningen tar hänsyn Margin till värdena för alla objekt i den innehållande Window. I det här fallet X är 28 och Y är 28.
Kommentarer
Du kan också använda VisualTreeHelper.GetOffset metoden för att hämta förskjutningen av ett visuellt objekt i förhållande till dess överordnade objekt. Förskjutningsvärdena finns i det returnerade Vector värdet.
// Return the offset vector for the TextBlock object.
Vector vector = VisualTreeHelper.GetOffset(myTextBlock);
// Convert the vector to a point value.
Point currentPoint = new Point(vector.X, vector.Y);
' Return the offset vector for the TextBlock object.
Dim vector As Vector = VisualTreeHelper.GetOffset(myTextBlock)
' Convert the vector to a point value.
Dim currentPoint As New Point(vector.X, vector.Y)