Ler em inglês

Compartilhar via


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.

C#
public System.Windows.Media.GeneralTransform TransformToVisual(System.Windows.Media.Visual visual);

Parâmetros

visual
Visual

O Visual para o qual as coordenadas são transformadas.

Retornos

Um valor do tipo GeneralTransform.

Exceções

visual é null.

Os objetos visuais não estão relacionados.

Exemplos

O exemplo de marcação a seguir mostra um TextBlock contido em um StackPanel objeto .

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

O exemplo de código a seguir mostra como usar o TransformToVisual método para recuperar o deslocamento do StackPanel em relação ao seu filho TextBlock. Os valores de deslocamento estão contidos no valor retornado GeneralTransform .

C#
// 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));

O deslocamento leva em conta os Margin valores de todos os objetos. Nesse caso, X é -4 e Y é -4. Os valores de deslocamento são valores negativos porque o objeto pai é deslocado negativamente em relação ao objeto filho.

Comentários

Os TransformToAncestor métodos e TransformToDescendant também podem ser usados para retornar uma transformação para um objeto visual.

Aplica-se a

Produto Versões
.NET Framework 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9, 10