Table of Contents

Class ObservableCollectionEx<TItem>

Namespace
Ecng.ComponentModel
Assembly
Ecng.ComponentModel.dll
public class ObservableCollectionEx<TItem> : IListEx<TItem>, IList<TItem>, ICollection<TItem>, IEnumerable<TItem>, ICollectionEx<TItem>, IList, ICollection, IEnumerable, INotifyCollectionChanged, INotifyPropertyChanged

Type Parameters

TItem
Inheritance
ObservableCollectionEx<TItem>
Implements
IListEx<TItem>
IList<TItem>
ICollectionEx<TItem>
Derived
Inherited Members
Extension Methods

Constructors

ObservableCollectionEx()

public ObservableCollectionEx()

Properties

Count

public int Count { get; }

Property Value

int

IsReadOnly

public bool IsReadOnly { get; }

Property Value

bool

this[int]

public TItem this[int index] { get; set; }

Parameters

index int

Property Value

TItem

Methods

Add(TItem)

public virtual void Add(TItem item)

Parameters

item TItem

AddRange(IEnumerable<TItem>)

public virtual void AddRange(IEnumerable<TItem> items)

Parameters

items IEnumerable<TItem>

Clear()

public virtual void Clear()

Contains(TItem)

public bool Contains(TItem item)

Parameters

item TItem

Returns

bool

CopyTo(TItem[], int)

public void CopyTo(TItem[] array, int arrayIndex)

Parameters

array TItem[]
arrayIndex int

GetEnumerator()

public IEnumerator<TItem> GetEnumerator()

Returns

IEnumerator<TItem>

IndexOf(TItem)

public int IndexOf(TItem item)

Parameters

item TItem

Returns

int

Insert(int, TItem)

public void Insert(int index, TItem item)

Parameters

index int
item TItem

OnPropertyChanged(string)

Helper to raise a PropertyChanged event.

protected void OnPropertyChanged(string propertyName)

Parameters

propertyName string

ProcessCollectionChanged(IEnumerable<NotifyCollectionChangedEventHandler>, NotifyCollectionChangedEventArgs)

Processes a collection of NotifyCollectionChangedEventHandler to raise the CollectionChanged event.

protected virtual void ProcessCollectionChanged(IEnumerable<NotifyCollectionChangedEventHandler> subscribers, NotifyCollectionChangedEventArgs args)

Parameters

subscribers IEnumerable<NotifyCollectionChangedEventHandler>

Subscribers.

args NotifyCollectionChangedEventArgs

Args.

Remove(TItem)

public virtual bool Remove(TItem item)

Parameters

item TItem

Returns

bool

RemoveAt(int)

public void RemoveAt(int index)

Parameters

index int

RemoveRange(IEnumerable<TItem>)

public virtual void RemoveRange(IEnumerable<TItem> items)

Parameters

items IEnumerable<TItem>

RemoveRange(int, int)

public virtual int RemoveRange(int index, int count)

Parameters

index int
count int

Returns

int

Events

AddedRange

public event Action<IEnumerable<TItem>> AddedRange

Event Type

Action<IEnumerable<TItem>>

CollectionChanged

public event NotifyCollectionChangedEventHandler CollectionChanged

Event Type

NotifyCollectionChangedEventHandler

PropertyChanged

public event PropertyChangedEventHandler PropertyChanged

Event Type

PropertyChangedEventHandler

RemovedRange

public event Action<IEnumerable<TItem>> RemovedRange

Event Type

Action<IEnumerable<TItem>>