Visual.TransformToVisual(Visual) Método

Definição

Retorna uma transformação que pode ser usada para transformar as coordenadas do Visual até o objeto visual especificado.Returns a transform that can be used to transform coordinates from the Visual to the specified visual object.

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

Parâmetros

visual
Visual

O Visual para o qual as coordenadas são transformadas.The Visual to which the coordinates are transformed.

Retornos

Um valor do tipo GeneralTransform.A value of type GeneralTransform.

Exceções

visual é null.visual is null.

Os objetos visuais não estão relacionados.The visual objects are not related.

Exemplos

O exemplo de marcação a seguir TextBlock mostra um que está contido StackPanel em um objeto.The following markup example shows a TextBlock that is contained within a StackPanel object.

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

O exemplo de código a seguir mostra como usar TransformToVisual o método para recuperar o deslocamento StackPanel do relativo ao seu filho TextBlock.The following code example shows how to use the TransformToVisual method to retrieve the offset of the StackPanel relative to its child TextBlock. Os valores de deslocamento estão contidos no valor GeneralTransform retornado.The offset values are contained within the returned GeneralTransform value.

// 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))

O deslocamento leva em consideração os Margin valores de todos os objetos.The offset takes into account the Margin values for all objects. Nesse caso, X é-4 e Y é-4.In this case, X is -4, and Y is -4. Os valores de deslocamento são valores negativos porque o objeto pai é deslocado negativamente em relação ao seu objeto filho.The offset values are negative values because the parent object is negatively offset relative to its child object.

Comentários

Os TransformToAncestor métodos TransformToDescendant e também podem ser usados para retornar uma transformação para um objeto visual.The TransformToAncestor and TransformToDescendant methods can also be used to return a transform for a visual object.

Aplica-se a