Visual.TransformToVisual(Visual) Método

Definición

Devuelve una transformación que se puede usar para transformar las coordenadas desde el objeto Visual en el objeto visual especificado.

public:
 System::Windows::Media::GeneralTransform ^ TransformToVisual(System::Windows::Media::Visual ^ visual);
public System.Windows.Media.GeneralTransform TransformToVisual (System.Windows.Media.Visual visual);
member this.TransformToVisual : System.Windows.Media.Visual -> System.Windows.Media.GeneralTransform
Public Function TransformToVisual (visual As Visual) As GeneralTransform

Parámetros

visual
Visual

Objeto Visual en el las coordenadas se transforman.

Devoluciones

Valor de tipo GeneralTransform.

Excepciones

visual es null.

Los objetos visuales no están relacionados.

Ejemplos

En el ejemplo de marcado siguiente se muestra una clase TextBlock que está anidada dentro de dos objetos StackPanel.

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

En el ejemplo de código siguiente se muestra cómo usar el método TransformToVisual para recuperar el desplazamiento de StackPanel con respecto a su elemento secundario TextBlock. Los valores de desplazamiento están incluidos en el valor devuelto GeneralTransform.

// 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));
' Return the general transform for the specified visual object.
Dim generalTransform1 As GeneralTransform = myStackPanel.TransformToVisual(myTextBlock)

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

El desplazamiento tiene en cuenta los valores Margin de todos los objetos. En este caso, X es -4 y Y es -4. Los valores de desplazamiento son valores negativos porque el objeto primario se desplaza negativamente en relación con su objeto secundario.

Comentarios

Los TransformToAncestor métodos y TransformToDescendant también se pueden usar para devolver una transformación para un objeto visual.

Se aplica a