VisualTreeHelper Classe

Definição

Fornece métodos de utilitário que executam tarefas comuns envolvendo nós em uma árvore visual.

public ref class VisualTreeHelper abstract sealed
public static class VisualTreeHelper
type VisualTreeHelper = class
Public Class VisualTreeHelper
Herança
VisualTreeHelper

Exemplos

O exemplo a seguir mostra como enumerar todos os descendentes de um objeto visual, que é uma técnica que talvez você queira usar caso esteja interessado em serializar a informação de renderização de uma hierarquia de objetos visuais.

// Enumerate all the descendants of the visual object.
static public void EnumVisual(Visual myVisual)
{
    for (int i = 0; i < VisualTreeHelper.GetChildrenCount(myVisual); i++)
    {
        // Retrieve child visual at specified index value.
        Visual childVisual = (Visual)VisualTreeHelper.GetChild(myVisual, i);

        // Do processing of the child visual object.

        // Enumerate children of the child visual object.
        EnumVisual(childVisual);
    }
}
' Enumerate all the descendants of the visual object.
Public Shared Sub EnumVisual(ByVal myVisual As Visual)
    For i As Integer = 0 To VisualTreeHelper.GetChildrenCount(myVisual) - 1
        ' Retrieve child visual at specified index value.
        Dim childVisual As Visual = CType(VisualTreeHelper.GetChild(myVisual, i), Visual)

        ' Do processing of the child visual object.

        ' Enumerate children of the child visual object.
        EnumVisual(childVisual)
    Next i
End Sub

Comentários

Os nós na árvore visual podem ser Visual objetos ou Visual3D . Métodos específicos para um tipo de objeto visual são digitados como Visual ou Visual3D. No entanto, alguns métodos na VisualTreeHelper classe podem aceitar um DependencyObject valor que representa qualquer tipo de objeto visual.

O WPF dá suporte ao acesso programático a várias estruturas de árvore diferentes de objetos. Principalmente, isso é exposto como uma árvore visual e uma árvore lógica. Em alguns casos, a árvore lógica é uma representação mais útil dos elementos em um aplicativo WPF, mas conceitualmente a árvore lógica é implementada em um nível além da Visual classe . Ao contrário da árvore visual, a árvore lógica pode representar objetos de dados não visuais, como ListItem. Para obter mais informações sobre a árvore lógica, consulte Árvores no WPF. A árvore lógica também é compatível com uma classe de método utilitário semelhante, LogicalTreeHelper.

Métodos

GetBitmapEffect(Visual)

Retorna o valor BitmapEffect para o Visual especificado.

GetBitmapEffectInput(Visual)

Retorna o valor BitmapEffectInput para o Visual especificado.

GetCacheMode(Visual)

Recupera a representação armazenada em cache do Visual especificado.

GetChild(DependencyObject, Int32)

Retorna o objeto filho visual do índice de coleção especificado dentro de um pai especificado.

GetChildrenCount(DependencyObject)

Retorna o número de filhos que o objeto visual especificado contém.

GetClip(Visual)

Retorna a região de recorte do Visual especificado como um valor Geometry.

GetContentBounds(Visual)

Retorna o retângulo da caixa delimitadora armazenada em cache para o Visual especificado.

GetContentBounds(Visual3D)

Retorna o retângulo da caixa delimitadora armazenada em cache para o Visual3D especificado.

GetDescendantBounds(Visual)

Retorna a união de todas as caixas delimitadoras de conteúdo para todos os descendentes do Visual, o que inclui a caixa delimitadora de conteúdo do Visual.

GetDescendantBounds(Visual3D)

Retorna a união de todas as caixas delimitadoras de conteúdo para todos os descendentes do Visual3D especificado, o que inclui a caixa delimitadora de conteúdo do Visual3D.

GetDpi(Visual)

Obtém as informações de DPI com as quais esse Visual é medido e renderizado.

GetDrawing(Visual)

Retorna o conteúdo do desenho do Visual especificado.

GetEdgeMode(Visual)

Retorna o modo de borda do Visual especificado como um valor EdgeMode.

GetEffect(Visual)

Obtém o efeito de bitmap do Visual especificado.

GetOffset(Visual)

Retorna o deslocamento do Visual.

GetOpacity(Visual)

Retorna a opacidade do Visual.

GetOpacityMask(Visual)

Retorna um valor Brush que representa a máscara de opacidade do Visual.

GetParent(DependencyObject)

Retorna um valor DependencyObject que representa o pai do objeto visual.

GetTransform(Visual)

Retorna um valor Transform para o Visual.

GetXSnappingGuidelines(Visual)

Retorna uma coleção de diretrizes de coordenada X (vertical).

GetYSnappingGuidelines(Visual)

Retorna uma coleção de diretrizes de coordenada Y (horizontal).

HitTest(Visual, HitTestFilterCallback, HitTestResultCallback, HitTestParameters)

Inicia um teste de clique no Visual especificado, com métodos HitTestFilterCallback e HitTestResultCallback definidos pelo chamador.

HitTest(Visual, Point)

Retorna o primeiro objeto Visual de um teste de clique especificando um Point.

HitTest(Visual3D, HitTestFilterCallback, HitTestResultCallback, HitTestParameters3D)

Inicia um teste de clique no Visual3D especificado, com métodos HitTestFilterCallback e HitTestResultCallback definidos pelo chamador.

SetRootDpi(Visual, DpiScale)

Atualiza as informações de DPI de um Visual. Só pode ser chamado em um Visual sem pai.

Aplica-se a