VisualTreeHelper 類別
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
提供對視覺化樹狀結構中的節點執行常見工作的公用程式方法。
public ref class VisualTreeHelper abstract sealed
public static class VisualTreeHelper
type VisualTreeHelper = class
Public Class VisualTreeHelper
- 繼承
-
VisualTreeHelper
範例
下列範例示範如何列舉視覺物件的所有子系,如果您對將視覺物件階層的所有轉譯資訊序列化感興趣,這也會是您想要使用的技術。
// 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
備註
視覺化樹狀結構中的節點可以是 Visual 或 Visual3D 物件。 特定視覺物件類型的方法會輸入為 Visual 或 Visual3D 。 不過,類別中的 VisualTreeHelper 某些方法可以接受代表任一 DependencyObject 種視覺物件類型的值。
WPF 支援以程式設計方式存取物件的數個不同樹狀結構。 主要是,這會公開為視覺化樹狀結構與邏輯樹狀結構。 在某些情況下,邏輯樹狀結構是 WPF 應用程式中元素的更實用標記法,但邏輯樹狀結構在類別以外的層級實 Visual 作。 不同于視覺化樹狀結構,邏輯樹狀結構可以代表非視覺化的資料物件,例如 ListItem 。 如需邏輯樹狀結構的詳細資訊,請參閱 WPF 中的樹狀結構。 類似的公用程式方法類別也支援邏輯樹狀結構。 LogicalTreeHelper