[]
        
(Showing Draft Content)

C1.DataCollection.C1FilterDataCollection-1

C1FilterDataCollection<T> Class

Collection which supports filtering.

Inheritance
C1FilterDataCollection<T>
Namespace: C1.DataCollection
Assembly: C1.DataCollection.dll
Syntax
public class C1FilterDataCollection<T> : C1WrapDataCollection<T>, IDataCollection<T>, IReadOnlyList<T>, IReadOnlyCollection<T>, IEnumerable<T>, IEnumerable, INotifyCollectionChanged, ISupportIndexing<T>, INotifyPropertyChanged, IDisposable, ISupportSorting, ISupportFiltering, ISupportGrouping, ISupportVirtualization, ISupportConnection, ISupportAsyncLoading<T>, ISupportIncrementalLoading, ISupportRefreshing, ISupportRangeEditing<T>, ISupportEditing<T>, ISupportCreateNewItem<T>, ISupportPaging, ISupportSource where T : class?
Type Parameters
Name Description
T

The type of the items in the collection.

Constructors

Name Description
C1FilterDataCollection(IEnumerable)

Initializes a new instance of the C1FilterDataCollection<T> class.

Properties

Name Description
Cache

Gets or sets the cache used to store compiled predicates.

FilterExpression

Gets the filter expression applied to the data.

InternalList

Gets or sets the list that hold the items to be returned in the public api.

IsFiltered

Gets whether the collection is filtered.

IsThreadSafe

Gets or sets a value indicating whether the filter predicate will be executed in the same thread as the call.

RunSynchronously

Gets or sets whether the sorting is performed synchronously.

UseCPUsInParallel

Gets or sets a value indicating whether the operations will be performed using parallels CPU's.

Methods

Name Description
CanFilter(FilterExpression?)

Returns whether the collection is able to filter the specified expression.

CanInsertRange(int, IEnumerable<T>)

Determines whether a new range of items can be inserted in the collection at the specified startingIndex.

CanMoveRange(int, int, int)

Determines whether the item at fromIndex can be moved to toIndex.

CanRemoveRange(int, int)

Determines whether a range of items at the specified startingIndex can be removed from the collection.

CanReplaceRange(int, IEnumerable<T>)

Determines whether the items starting at the specified startingIndex can be replaced in the collection.

Dispose(bool)

Called to dispose resources.

FilterAsync(FilterExpression?, CancellationToken)

Filters the data using specified filter expression.

GetSourceIndex(int)

Gets the index of the item at the specified index in the source.

InsertAsync(int, T, CancellationToken)

Inserts the specified item at the specified index in the collection.

MoveAsync(int, int, CancellationToken)

Moves an item from the specified position to the new one.

OnSourceCollectionChanged(object?, NotifyCollectionChangedEventArgs)

Called when the source collection changed.

RemoveAsync(int, CancellationToken)

Removes the item at the specified index from the collection.

ReplaceAsync(int, T, CancellationToken)

Replaces the item at the specified index by the new specified item.

Extension Methods