[]
Provides methods and events that are required for LiveLinq functionality, indexing and live views.
public interface IObservableSource<T> : IEnumerable<T>, IEnumerable
Name | Description |
---|---|
T | The type of the elements in the collection. |
Indexing and live view functionality is available for any collection that supports change notifications necessary for maintaining indexes and live views, that is, fires events when an item is added to or removed from the collection and when a property of the item changes. So, the members of this interface are mostly concerned with providing such notifications.
Classes implementing this interface usually also implement IIndexedSource<T>.
Both these interfaces are implemented by all main LiveLinq collection classes: IndexedCollection<T>, IndexedDataTable<TRow>, View<T>.
You need to implement this interface only if you want to define your own indexable collection classes and then only if they don't inherit from IndexedCollection<T>, see LiveLinq to Objects: IndexedCollection(T) and other collection classes.
Name | Description |
---|---|
CreateNew | This delegate is used to create new items. If it is null, a public parameterless constructor of type T is used. |
IsDeletedStateAvailable | Gets a value indicating whether an item of this collection can still return correct property values after it has been deleted from the collection. |
SupportsItemOrdinals | Gets a value that indicates whether this collection is capable of providing the ordinal position of the changed item when it notifies of an item change. |
Name | Description |
---|---|
EnableItemOrdinals() | After this method is called, the collection is required to provide Ordinal in event data. |
Name | Description |
---|---|
Changed | Occurs after an item of the collection or the entire collection has changed. |