DependencyObjectCollection 类

定义

实现可包含 DependencyObject 项的实用集合类。

/// [Windows.Foundation.Metadata.ContractVersion(Microsoft.UI.Xaml.WinUIContract, 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(Microsoft.UI.Xaml.WinUIContract), 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
属性
实现

注解

类的 DependencyObjectCollection 用途主要是支持行为的工具和可移植性。 行为是一种技术,用于完全在 XAML 中定义 UI 元素的某些基本交互,而无需事件处理程序和代码隐藏。

如果想要实现支持集合更改通知的业务对象类,应使用 ObservableCollection 或支持已更改事件的接口模式之一。 有关详细信息,请参阅 数据绑定深度

枚举 C# 或 Microsoft Visual Basic 中的集合

DependencyObjectCollection 可枚举的,因此可以使用特定于语言的语法(例如 foreach 在 C# 中)枚举集合中的项。 编译器为你执行类型强制转换,你无需显式强制转换为 IEnumerable<DependencyObject> 。 如果需要显式强制转换(例如,如果要调用 GetEnumerator),请使用 DependencyObject 约束强制转换为 IEnumerable

构造函数

DependencyObjectCollection()

初始化 DependencyObjectCollection 类的新实例。

属性

Dispatcher

始终在Windows 应用 SDK应用中返回 null 。 请改用 DispatcherQueue

(继承自 DependencyObject)
DispatcherQueue

DispatcherQueue获取与此对象关联的 。 表示 DispatcherQueue 一个可以在 UI 线程上访问 DependencyObject 的设施,即使代码是由非 UI 线程启动的。

(继承自 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)

注册通知函数,用于侦听此 DependencyObject 实例上对特定 DependencyProperty 的更改。

(继承自 DependencyObject)
RemoveAt(UInt32)

删除指定索引处的项。

RemoveAtEnd()

删除集合中的最后一项。

ReplaceAll(DependencyObject[])

最初清除集合,然后将提供的数组作为新项插入。

SetAt(UInt32, DependencyObject)

将指定索引处的值设置为指定的 DependencyObject 值。

SetValue(DependencyProperty, Object)

设置 DependencyObject 上依赖属性的本地值。

(继承自 DependencyObject)
UnregisterPropertyChangedCallback(DependencyProperty, Int64)

取消以前通过调用 RegisterPropertyChangedCallback 注册的更改通知。

(继承自 DependencyObject)

事件

VectorChanged

在集合内容更改时发生。

适用于

另请参阅