FrameworkElement.VisualChildrenCount Свойство

Определение

Получает количество визуальных дочерних элементов внутри этого элемента.Gets the number of visual child elements within this element.

protected:
 virtual property int VisualChildrenCount { int get(); };
protected override int VisualChildrenCount { get; }
member this.VisualChildrenCount : int
Protected Overrides ReadOnly Property VisualChildrenCount As Integer

Значение свойства

Количество визуальных дочерних элементов для этого элемента.The number of visual child elements for this element.

Примеры

В следующем примере показано, как пользовательский декоративный элемент использует значения, объявленные VisualCollection, которые он поддерживает для нескольких визуальных дочерних элементов, и передает эти значения с помощью переопределений VisualChildrenCount и GetVisualChild.The following example shows how a custom adorner uses the values declared by a VisualCollection that it maintains for its multiple visual children and reports these values through overrides of VisualChildrenCount and GetVisualChild.

// To store and manage the adorner's visual children.
VisualCollection visualChildren;
' To store and manage the adorner's visual children.
Private visualChildren As VisualCollection
// Override the VisualChildrenCount and GetVisualChild properties to interface with 
// the adorner's visual collection.
protected override int VisualChildrenCount { get { return visualChildren.Count; } }
protected override Visual GetVisualChild(int index) { return visualChildren[index]; }
' Override the VisualChildrenCount and GetVisualChild properties to interface with 
' the adorner's visual collection.
Protected Overrides ReadOnly Property VisualChildrenCount() As Integer
    Get
        Return visualChildren.Count
    End Get
End Property
Protected Overrides Function GetVisualChild(ByVal index As Integer) As Visual
    Return visualChildren(index)
End Function

Комментарии

FrameworkElement реализация VisualChildrenCount всегда возвращает либо ноль, либо один.The FrameworkElement implementation of VisualChildrenCount always returns either zero or one. Классы, поддерживающие визуальную дочернюю коллекцию, которая может превышать один, должны переопределять как это свойство, так и GetVisualChild.Classes that maintain a visual child collection that might exceed one must override both this property and GetVisualChild.

Это свойство обычно используется для определения верхних границ текущей дочерней коллекции в целях реализации переопределений макета (MeasureOverride, ArrangeOverride).This property is generally used to determine the upper bounds of the current child collection for purposes of implementing the layout overrides (MeasureOverride, ArrangeOverride).

Примечания для тех, кто наследует этот метод

Если ваш класс поддерживает более одного визуального дочернего элемента в коллекции дочерних элементов, Переопределите это свойство, чтобы оно возвращало количество элементов в этой коллекции.If your class supports more than one visual child in a child element collection, override this property to return the count of elements in that collection. Это необходимо сделать, даже если сам объект коллекции возвращает число.You must do this even if the collection object itself returns a count. Логика макета элемента на уровне платформы WPF предполагает, что все элементы будут возвращать допустимый счетчик через свойство VisualChildrenCount.Element layout logic at the WPF framework level presumes that all elements will return a valid count through their VisualChildrenCount property.

Применяется к