Visual.TransformToVisual(Visual) Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
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
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.