VisualTreeHelper.GetChildrenCount(DependencyObject) 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
傳回存在於視覺化樹狀結構中物件子集合中的子係數目。
public:
static int GetChildrenCount(DependencyObject ^ reference);
static int GetChildrenCount(DependencyObject const& reference);
public static int GetChildrenCount(DependencyObject reference);
function getChildrenCount(reference)
Public Shared Function GetChildrenCount (reference As DependencyObject) As Integer
參數
- reference
- DependencyObject
來源視覺效果。
傳回
Int32
int
所提供來源視覺效果的視覺子係數目。
範例
以下是公用程式函式的範例,可從視覺化樹狀結構中複製特定類型的子專案清單。 它會使用 GetChildrenCount 和 GetChild的基本周遊方法。 它會使用遞迴,讓元素可以在中繼容器記憶體在巢狀層級中找到。 它也會使用System.Reflection的IsSubclassOf擴充方法,擴充類型比較,以將子類型視為 Type 的相符專案。
internal static void FindChildren<T>(List<T> results, DependencyObject startNode)
where T : DependencyObject
{
int count = VisualTreeHelper.GetChildrenCount(startNode);
for (int i = 0; i < count; i++)
{
DependencyObject current = VisualTreeHelper.GetChild(startNode, i);
if ((current.GetType()).Equals(typeof(T)) || (current.GetType().GetTypeInfo().IsSubclassOf(typeof(T))))
{
T asType = (T)current;
results.Add(asType);
}
FindChildren<T>(results, current);
}
}