ListCollectionView 类

定义

表示实现 IList 的集合的集合视图。

public ref class ListCollectionView : System::Windows::Data::CollectionView, System::Collections::IComparer, System::ComponentModel::IEditableCollectionView, System::ComponentModel::IItemProperties
public ref class ListCollectionView : System::Windows::Data::CollectionView, System::Collections::IComparer, System::ComponentModel::IEditableCollectionViewAddNewItem, System::ComponentModel::IItemProperties
public ref class ListCollectionView : System::Windows::Data::CollectionView, System::Collections::IComparer, System::ComponentModel::ICollectionViewLiveShaping, System::ComponentModel::IEditableCollectionViewAddNewItem, System::ComponentModel::IItemProperties
public class ListCollectionView : System.Windows.Data.CollectionView, System.Collections.IComparer, System.ComponentModel.IEditableCollectionView, System.ComponentModel.IItemProperties
public class ListCollectionView : System.Windows.Data.CollectionView, System.Collections.IComparer, System.ComponentModel.IEditableCollectionViewAddNewItem, System.ComponentModel.IItemProperties
public class ListCollectionView : System.Windows.Data.CollectionView, System.Collections.IComparer, System.ComponentModel.ICollectionViewLiveShaping, System.ComponentModel.IEditableCollectionViewAddNewItem, System.ComponentModel.IItemProperties
type ListCollectionView = class
    inherit CollectionView
    interface IComparer
    interface IEditableCollectionView
    interface IItemProperties
type ListCollectionView = class
    inherit CollectionView
    interface IComparer
    interface IEditableCollectionViewAddNewItem
    interface IEditableCollectionView
    interface IItemProperties
type ListCollectionView = class
    inherit CollectionView
    interface IComparer
    interface IEditableCollectionViewAddNewItem
    interface IEditableCollectionView
    interface ICollectionViewLiveShaping
    interface IItemProperties
type ListCollectionView = class
    inherit CollectionView
    interface IComparer
    interface ICollectionViewLiveShaping
    interface IEditableCollectionView
    interface IEditableCollectionViewAddNewItem
    interface IItemProperties
Public Class ListCollectionView
Inherits CollectionView
Implements IComparer, IEditableCollectionView, IItemProperties
Public Class ListCollectionView
Inherits CollectionView
Implements IComparer, IEditableCollectionViewAddNewItem, IItemProperties
Public Class ListCollectionView
Inherits CollectionView
Implements ICollectionViewLiveShaping, IComparer, IEditableCollectionViewAddNewItem, IItemProperties
继承
实现

注解

绑定到数据收集时,可能需要对数据进行排序、筛选或分组。 为此,请使用集合视图。 可以将 视为 CollectionView 绑定源集合顶部的层,使你能够基于排序、筛选和分组查询导航和显示源集合,而无需操作基础源集合本身。 如果源集合实现 INotifyCollectionChanged 接口,则 CollectionChanged 事件引发的更改会传播到视图。

所有集合都具有默认 CollectionView的 。 对于实现 IList的所有集合, ListCollectionView 对象是默认视图对象。 BindingListCollectionView是用于实现 IBindingList的集合的集合视图类。 若要获取默认视图,请使用 GetDefaultView 方法。 有关示例,请参阅 如何:获取数据收集的默认视图

有关集合视图的详细信息,请参阅 数据绑定概述

构造函数

ListCollectionView(IList)

使用所提供的实现 ListCollectionView 的集合来初始化 IList 类的新实例。

属性

ActiveComparer

获取或设置在排序时使用的当前活动比较器。

ActiveFilter

获取或设置当前活动的 Filter 回调。

AllowsCrossThreadChanges

获取指示创建的 CollectionView 线程能更改 SourceCollection 的值。

(继承自 CollectionView)
CanAddNew

获取一个值,该值指示是否可以将新项添加到集合中。

CanAddNewItem

获取一个值,该值指示是否可以向集合中添加指定的对象。

CanCancelEdit

获取一个值,该值指示集合视图是否可以放弃挂起的更改并还原所编辑对象的原始值。

CanChangeLiveFiltering

获取一个值,该值指示集合视图是否支持打开或关闭实时筛选数据。

CanChangeLiveGrouping

获取一个值,该值指示集合视图是否支持在真实时间中打开或关闭分组数据。

CanChangeLiveSorting

获取一个值,该值指示集合视图是否支持在真实时间中打开或关闭排序数据。

CanFilter

获取一个值,该值指示视图是否支持基于回调的筛选。

CanGroup

获取一个值,该值指示集合视图是否支持分组。

CanRemove

获取一个值,该值指示是否可以从集合中移除项。

CanSort

获取一个值,该值指示集合视图是否支持排序。

Comparer

返回可用于比较视图中的项的对象。

(继承自 CollectionView)
Count

获取记录的估计数量。

Culture

获取或设置排序期间使用的区域性信息。

(继承自 CollectionView)
CurrentAddItem

获取当前添加事务过程中正在添加的项。

CurrentEditItem

获取集合中正在编辑的项。

CurrentItem

获取视图中的当前项。

(继承自 CollectionView)
CurrentPosition

获取 CurrentItem 在(可能经过排序和筛选)视图中的序号位置。

(继承自 CollectionView)
CustomSort

获取或设置一个实现 IComparer 的自定义对象,用于在视图中对项进行排序。

Dispatcher

获取与此 Dispatcher 关联的 DispatcherObject

(继承自 DispatcherObject)
Filter

获取或设置用于确定某个项是否适合包含在视图中的方法。

GroupBySelector

获取或设置一个委托,用于将 GroupDescription 选作父组及其级别的功能。

GroupDescriptions

获取 GroupDescription 对象的集合,这些对象描述集合中的项在视图中的分组方式。

Groups

获取顶级组。

InternalCount

获取 InternalList 中记录的数量。

InternalList

获取经过筛选和排序的项列表。

IsAddingNew

获取一个值,该值指示是否正在执行添加事务。

IsCurrentAfterLast

获取一个值,该值指示视图的 CurrentItem 是否超出集合的末尾。

(继承自 CollectionView)
IsCurrentBeforeFirst

获取一个值,该值指示视图的 CurrentItem 是否在集合开头之前。

(继承自 CollectionView)
IsCurrentInSync

获取一个值,该值指示 CurrentItem 是否位于 CurrentPosition

(继承自 CollectionView)
IsDataInGroupOrder

获取或设置一个值,该值指示项列表在应用排序功能和筛选器(如果有)后是否已处于可以进行分组的正确顺序。

IsDynamic

获取一个值,该值指示基础集合是否提供更改通知。

(继承自 CollectionView)
IsEditingItem

获取一个值,该值指示是否正在执行编辑事务。

IsEmpty

返回一个值,该值指示最终的(已筛选)视图是否为空。

IsGrouping

获取一个值,该值指示视图中是否有组。

IsInUse

获取指示所有对象是否支持此 CollectionView 事件的值。

(继承自 CollectionView)
IsLiveFiltering

获取或设置一个值,该值指示是否启用实时筛选数据。

IsLiveGrouping

获取或设置一个值,该值指示是否启用实时数据分组。

IsLiveSorting

获取或设置一个值,该值指示是否启用实时排序。

IsRefreshDeferred

获取一个值,该值指示是否有某个未完成的 DeferRefresh() 正在运行。

(继承自 CollectionView)
ItemProperties

获取一个对象集合,该集合描述集合中项的属性。

LiveFilteringProperties

获取在真实时间中参与筛选数据的属性的字符集合。

LiveGroupingProperties

获取在真实时间中参与分组数据的属性的字符集合。

LiveSortingProperties

获取在真实时间中参与排序数据的属性的字符集合。

NeedsRefresh

获取一个值,该值指示视图是否需要刷新。

(继承自 CollectionView)
NewItemPlaceholderPosition

获取或设置新项占位符在 ListCollectionView 中的位置。

SortDescriptions

获取 SortDescription 对象的集合,该集合描述集合中的项在视图中的排序方式。

SourceCollection

返回未筛选的基础集合。

(继承自 CollectionView)
UpdatedOutsideDispatcher

获取一个值,该值指示是否有必要更新更改日志,因为 CollectionChanged 已在不同的线程上收到通知,而无需先进入用户界面 (UI) 线程调度程序。

(继承自 CollectionView)
UsesLocalArray

获取一个值,该值指示排序和筛选是否需要数据的私有副本。

方法

AddNew()

开始添加事务并返回挂起的新项。

AddNewItem(Object)

将指定的对象添加到集合。

CancelEdit()

结束编辑事务,并还原项的原始值(如有可能)。

CancelNew()

结束添加事务并放弃挂起的新项。

CheckAccess()

确定调用线程是否可以访问此 DispatcherObject

(继承自 DispatcherObject)
ClearChangeLog()
已过时.

从更改日志中清除所有挂起的更改。

(继承自 CollectionView)
ClearPendingChanges()

清除未处理更改为集合。

(继承自 CollectionView)
CommitEdit()

结束编辑事务并保存挂起的更改。

CommitNew()

结束添加事务并保存挂起的新项。

Compare(Object, Object)

比较两个对象并返回一个值,指示一个对象是小于、等于还是大于另一个对象。

Contains(Object)

返回一个值,该值指示给定项是否属于集合视图。

DeferRefresh()

进入延迟循环,该循环可用于将更改合并到视图并延迟自动刷新。

(继承自 CollectionView)
DetachFromSourceCollection()

CollectionView 中移除对基础集合的引用。

(继承自 CollectionView)
EditItem(Object)

开始指定项的编辑事务。

Equals(Object)

确定指定对象是否等于当前对象。

(继承自 Object)
GetEnumerator()

返回可用于枚举视图中的项的对象。

GetHashCode()

作为默认哈希函数。

(继承自 Object)
GetItemAt(Int32)

检索位于视图中指定位置的项。

GetType()

获取当前实例的 Type

(继承自 Object)
IndexOf(Object)

返回给定数据项在集合中所在位置的索引,如果该项的索引未知,则返回 -1。

InternalContains(Object)

返回一个值,该值指示 InternalList 是否包含此项。

InternalGetEnumerator()

返回 InternalList 的一个枚举数。

InternalIndexOf(Object)

返回指定项在 InternalList 中的索引。

InternalItemAt(Int32)

返回 InternalList 中给定索引处的项。

MemberwiseClone()

创建当前 Object 的浅表副本。

(继承自 Object)
MoveCurrentTo(Object)

将指定项设置为视图中的 CurrentItem

(继承自 CollectionView)
MoveCurrentToFirst()

将视图中的第一项设置为 CurrentItem

(继承自 CollectionView)
MoveCurrentToLast()

将视图中的最后一项设置为 CurrentItem

(继承自 CollectionView)
MoveCurrentToNext()

将视图中位于 CurrentItem 之后的项设置为 CurrentItem

(继承自 CollectionView)
MoveCurrentToPosition(Int32)

将位于指定索引位置的项设置为视图中的 CurrentItem

MoveCurrentToPrevious()

将视图中位于 CurrentItem 之前的项设置为 CurrentItem

(继承自 CollectionView)
OKToChangeCurrent()

返回一个值,该值指示视图是否可以更改作为 CurrentItem 的项。

(继承自 CollectionView)
OnAllowsCrossThreadChangesChanged()

AllowsCrossThreadChanges 属性更改时发生。

OnAllowsCrossThreadChangesChanged()

AllowsCrossThreadChanges 属性更改时发生。

(继承自 CollectionView)
OnBeginChangeLogging(NotifyCollectionChangedEventArgs)
已过时.

由基类调用,用于通知派生类已将 CollectionChanged 事件发送到消息队列。

OnCollectionChanged(NotifyCollectionChangedEventArgs)

引发 CollectionChanged 事件。

(继承自 CollectionView)
OnCollectionChanged(Object, NotifyCollectionChangedEventArgs)

引发 CollectionChanged 事件。

(继承自 CollectionView)
OnCurrentChanged()

引发 CurrentChanged 事件。

(继承自 CollectionView)
OnCurrentChanging()

引发一个不可取消的 CurrentChanging 事件。

(继承自 CollectionView)
OnCurrentChanging(CurrentChangingEventArgs)

用指定的参数引发 CurrentChanging 事件。

(继承自 CollectionView)
OnPropertyChanged(PropertyChangedEventArgs)

用指定的参数引发 PropertyChanged 事件。

(继承自 CollectionView)
PassesFilter(Object)

返回一个值,该值指示基础集合中的指定项是否属于视图。

ProcessCollectionChanged(NotifyCollectionChangedEventArgs)

处理 CollectionChanged 事件。

ProcessPendingChanges()

确保此集合的所有待定更改都已被提交。

(继承自 CollectionView)
Refresh()

重新创建视图。

(继承自 CollectionView)
RefreshOrDefer()

刷新视图或指定视图在延迟循环完成后需要刷新。

(继承自 CollectionView)
RefreshOverride()

重新创建该视图。

Remove(Object)

从集合中移除指定的项。

RemoveAt(Int32)

从集合中删除指定位置的项。

SetCurrent(Object, Int32)

将指定项和索引设置为 CurrentItemCurrentPosition 属性的值。

(继承自 CollectionView)
SetCurrent(Object, Int32, Int32)

将指定项和索引设置为 CurrentItemCurrentPosition 属性的值。 可以从派生类的构造函数中调用此方法。

(继承自 CollectionView)
ToString()

返回表示当前对象的字符串。

(继承自 Object)
VerifyAccess()

强制调用线程具有此 DispatcherObject 的访问权限。

(继承自 DispatcherObject)

事件

CollectionChanged

在更改树时发生。

(继承自 CollectionView)
CurrentChanged

CurrentItem 更改后发生。

(继承自 CollectionView)
CurrentChanging

CurrentItem 正在更改时发生。

(继承自 CollectionView)
PropertyChanged

在属性值更改时发生。

(继承自 CollectionView)

显式接口实现

IComparer.Compare(Object, Object)

此成员支持Windows Presentation Foundation (WPF) 基础结构,不应直接从代码中使用。

IEnumerable.GetEnumerator()

返回可用于枚举视图中的项的 IEnumerator 对象。

(继承自 CollectionView)
INotifyCollectionChanged.CollectionChanged

在更改树时发生。

(继承自 CollectionView)
INotifyPropertyChanged.PropertyChanged

在属性值更改时发生。

(继承自 CollectionView)

扩展方法

Cast<TResult>(IEnumerable)

IEnumerable 的元素强制转换为指定的类型。

OfType<TResult>(IEnumerable)

根据指定类型筛选 IEnumerable 的元素。

AsParallel(IEnumerable)

启用查询的并行化。

AsQueryable(IEnumerable)

IEnumerable 转换为 IQueryable

适用于