VisualTreeHelper Classe
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Fornece métodos utilitários que realizam tarefas comuns envolvendo nós numa á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 você pode querer usar se estiver interessado em serializar todas as informações de renderização de uma hierarquia de objeto visual.
// Enumerate all the descendants of the visual object.
public static 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
Observações
Os nós na árvore visual podem ser objetosVisual.Visual3D Métodos específicos de um tipo de objeto visual são tipados como ou VisualVisual3D. No entanto, alguns métodos na VisualTreeHelper classe podem aceitar um DependencyObject valor que representa qualquer um dos tipos de objeto visual.
O WPF suporta acesso programático a várias estruturas de árvore diferentes de objetos. Principalmente, isto é exposto como uma árvore visual e uma árvore lógica. Em alguns casos, a árvore lógica é uma representação mais útil dos elementos numa aplicação WPF, mas conceptualmente a árvore lógica é implementada a um nível além da classe Visual. 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 é suportada por uma classe de método de utilidade semelhante, LogicalTreeHelper.
Métodos
| Name | Description |
|---|---|
| GetBitmapEffect(Visual) |
Devolve o BitmapEffect valor para o especificado Visual. |
| GetBitmapEffectInput(Visual) |
Devolve o BitmapEffectInput valor para o especificado Visual. |
| GetCacheMode(Visual) |
Recupera a representação em cache do .Visual |
| GetChild(DependencyObject, Int32) |
Devolve o objeto visual filho do índice de coleção especificado dentro de um pai especificado. |
| GetChildrenCount(DependencyObject) |
Devolve o número de filhos que o objeto visual especificado contém. |
| GetClip(Visual) |
Devolva a região do clip especificado Visual como valor Geometry . |
| GetContentBounds(Visual) |
Devolve o retângulo da caixa delimitadora em cache para o especificado Visual. |
| GetContentBounds(Visual3D) |
Devolve o retângulo da caixa delimitadora em cache para o especificado Visual3D. |
| GetDescendantBounds(Visual) |
Devolve 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 especificado Visual3D, o que inclui a caixa delimitadora de conteúdo do Visual3D. |
| GetDpi(Visual) |
Obtém a informação de DPI a partir da qual este Visual é medido e renderizado. |
| GetDrawing(Visual) |
Devolve o conteúdo de desenho do especificado Visual. |
| GetEdgeMode(Visual) |
Devolve o modo de aresta do especificado Visual como valor EdgeMode . |
| GetEffect(Visual) |
Obtém o efeito bitmap para o especificado Visual. |
| GetOffset(Visual) |
Devolve o deslocamento do Visual. |
| GetOpacity(Visual) |
Devolve a opacidade do Visual. |
| GetOpacityMask(Visual) |
Devolve um Brush valor que representa a máscara de opacidade do Visual. |
| GetParent(DependencyObject) |
Devolve um DependencyObject valor que representa o pai do objeto visual. |
| GetTransform(Visual) | |
| GetXSnappingGuidelines(Visual) |
Devolve uma coleção de diretrizes de coordenadas X (verticais). |
| GetYSnappingGuidelines(Visual) |
Devolve uma coleção de orientações horizontais (coordenadas Y). |
| HitTest(Visual, HitTestFilterCallback, HitTestResultCallback, HitTestParameters) |
Inicia um teste de acerto no especificado Visual, com os métodos e do chamador definido HitTestFilterCallbackHitTestResultCallback . |
| HitTest(Visual, Point) |
Devolve o objeto mais Visual alto de um teste de acerto especificando um Point. |
| HitTest(Visual3D, HitTestFilterCallback, HitTestResultCallback, HitTestParameters3D) |
Inicia um teste de acerto no especificado Visual3D, com os métodos e do chamador definido HitTestFilterCallbackHitTestResultCallback . |
| SetRootDpi(Visual, DpiScale) |
Atualiza a informação DPI de um Visual. Só pode ser chamada num Visual sem um pai. |