Поделиться через


DependencyObjectCollection Класс

Определение

Реализует практический класс коллекции, который может содержать элементы DependencyObject .

/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class DependencyObjectCollection : DependencyObject, IIterable<DependencyObject>, IObservableVector<DependencyObject>, IVector<DependencyObject>
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public class DependencyObjectCollection : DependencyObject, IEnumerable<DependencyObject>, IList<DependencyObject>, IObservableVector<DependencyObject>
Public Class DependencyObjectCollection
Inherits DependencyObject
Implements IEnumerable(Of DependencyObject), IList(Of DependencyObject), IObservableVector(Of DependencyObject)
Наследование
Object IInspectable DependencyObject DependencyObjectCollection
Атрибуты
Реализации

Требования к Windows

Семейство устройств
Windows 10 (появилось в 10.0.10240.0)
API contract
Windows.Foundation.UniversalApiContract (появилось в v1.0)

Комментарии

Класс DependencyObjectCollection предназначен главным образом для поддержки инструментов и переносимости поведения. Поведение — это метод определения определенных базовых взаимодействий элемента пользовательского интерфейса полностью в XAML без необходимости обработчика событий и кода программной части.

Если вы хотите реализовать класс бизнес-объектов, поддерживающий уведомления об изменении коллекции, следует использовать ObservableCollection или один из шаблонов интерфейса, поддерживающих измененные события. Дополнительные сведения см. в разделе Привязка данных.

Перечисление коллекции на C# или Microsoft Visual Basic

DependencyObjectCollection можно перечислить, поэтому для перечисления элементов в коллекции можно использовать синтаксис для конкретного языка, например foreach в C#. Компилятор выполняет приведение типов, и вам не нужно явно приводить к IEnumerable<DependencyObject> . Если вам нужно выполнить приведение явным образом, например, если вы хотите вызвать GetEnumerator, приведите к IEnumerable<T> с ограничением DependencyObject .

Конструкторы

DependencyObjectCollection()

Инициализирует новый экземпляр класса DependencyObjectCollection .

Свойства

Dispatcher

Возвращает CoreDispatcher , с которым связан этот объект. CoreDispatcher представляет средство, которое может получить доступ к DependencyObject в потоке пользовательского интерфейса, даже если код инициируется потоком, не относящегося к пользовательскому интерфейсу.

(Унаследовано от DependencyObject)
Size

Возвращает размер (количество) коллекции.

Методы

Append(DependencyObject)

Добавляет новый элемент в коллекцию.

Clear()

Удаляет все элементы из коллекции.

ClearValue(DependencyProperty)

Очищает локальное значение свойства зависимостей.

(Унаследовано от DependencyObject)
First()

Возвращает итератор для итерации элементов в коллекции.

GetAnimationBaseValue(DependencyProperty)

Возвращает любое базовое значение, установленное для свойства зависимостей, которое применяется в случаях, когда анимация не активна.

(Унаследовано от DependencyObject)
GetAt(UInt32)

Возвращает Объект DependencyObject , расположенный по указанному индексу.

GetMany(UInt32, DependencyObject[])

Извлекает несколько элементов за один проход через итератор.

GetValue(DependencyProperty)

Возвращает текущее действующее значение свойства зависимостей из DependencyObject.

(Унаследовано от DependencyObject)
GetView()

Возвращает неизменяемое представление в коллекции.

IndexOf(DependencyObject, UInt32)

Извлекает индекс указанного элемента.

InsertAt(UInt32, DependencyObject)

Вставляет указанный элемент по указанному индексу.

ReadLocalValue(DependencyProperty)

Возвращает локальное значение свойства зависимостей, если задано локальное значение.

(Унаследовано от DependencyObject)
RegisterPropertyChangedCallback(DependencyProperty, DependencyPropertyChangedCallback)

Регистрирует функцию уведомления для прослушивания изменений определенной DependencyProperty в этом экземпляре DependencyObject .

(Унаследовано от DependencyObject)
RemoveAt(UInt32)

Удаляет элемент по указанному индексу.

RemoveAtEnd()

Удаляет последний элемент в коллекции.

ReplaceAll(DependencyObject[])

Сначала очищает коллекцию, а затем вставляет предоставленный массив в качестве новых элементов.

SetAt(UInt32, DependencyObject)

Задает указанное значение DependencyObject по указанному индексу.

SetValue(DependencyProperty, Object)

Задает локальное значение свойства зависимостей для Объекта DependencyObject.

(Унаследовано от DependencyObject)
UnregisterPropertyChangedCallback(DependencyProperty, Int64)

Отменяет уведомление об изменениях, которое было ранее зарегистрировано путем вызова метода RegisterPropertyChangedCallback.

(Унаследовано от DependencyObject)

События

VectorChanged

Происходит при изменении содержимого коллекции.

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

См. также раздел