Click or drag to resize

ObservableCompositeCollectionT Class

View a set of collections as one continuous list.

Similar to the System.Windows.Data.CompositeCollection, plus:

  • Generic type
  • Transparent separation of the real content and the resulting list
  • Nestable, i.e. composite collections of composite collections
Inheritance Hierarchy
SystemObject
  System.Collections.ObjectModelReadOnlyCollectionT
    System.Collections.ObjectModelReadOnlyObservableCollectionT
      TomsToolbox.ObservableCollectionsObservableCompositeCollectionT

Namespace: TomsToolbox.ObservableCollections
Assembly: TomsToolbox.ObservableCollections (in TomsToolbox.ObservableCollections.dll) Version: 2.21.0+44d18b541fc9419ec3c549350a832394661b2a4d
XMLNS for XAML: Not mapped to an xmlns.
Syntax
public sealed class ObservableCompositeCollection<T> : ReadOnlyObservableCollection<T>, 
	IObservableCollection<T>, IList<T>, ICollection<T>, IEnumerable<T>, 
	IEnumerable, INotifyCollectionChanged, INotifyPropertyChanged

Type Parameters

T
Type of the items in the collection

The ObservableCompositeCollectionT type exposes the following members.

Constructors
 NameDescription
Public methodObservableCompositeCollectionT Create an empty collection
Public methodObservableCompositeCollectionT(IListT) Create a collection initially wrapping a set of lists
Top
Properties
 NameDescription
Public propertyContent Access to the physical layer of the content
Top
Events
 NameDescription
Public eventCollectionChanged Occurs when the collection changes.
Public eventPropertyChanged Occurs when a property value changes.
Top
Extension Methods
 NameDescription
Public Extension MethodAddRangeT Adds the elements of the specified collection to the end of the list.
(Defined by CollectionExtensions)
Public Extension MethodAddRangeT Adds the elements of the specified collection to the end of the list.
(Defined by CollectionExtensions)
Public Extension MethodContainsAnyT Shortcut to test if any of the given items are contained in the specified object.
(Defined by CollectionExtensions)
Public Extension MethodContainsAnyT Shortcut to test if any of the given items are contained in the specified object.
(Defined by CollectionExtensions)
Public Extension MethodExceptNullItemsT Filters a sequence of values based on their nullness.
(Defined by NullableExtensions)
Public Extension MethodFindIndexT Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the first occurrence within the entire IEnumerableT.
(Defined by CollectionExtensions)
Public Extension MethodForEachT Performs the specified action on each element of the collection.
(Defined by CollectionExtensions)
Public Extension MethodForEachT Performs the specified action on each element of the collection, providing also the index of the item.
(Defined by CollectionExtensions)
Public Extension MethodIndexOfT Searches for the specified object and returns the zero-based index of the first occurrence within all items.
(Defined by CollectionExtensions)
Public Extension MethodIndexOfT Searches for the specified object and returns the zero-based index of the first occurrence within all items.
(Defined by CollectionExtensions)
Public Extension MethodObservableCastTTarget Returns an observable collection of objects of type TTarget that mirrors the source collection.
(Defined by ObservableExtensions)
Public Extension MethodObservableSelectT, TTarget Projects each element of a sequence into a new form.
(Defined by ObservableExtensions)
Public Extension MethodObservableSelectManyT, TTarget Projects each element of a sequence to an IListT, flattens the resulting sequences into one sequence, and invokes a result selector function on each element therein. If the source is an observable collection, the resulting sequence will track the changes.
(Defined by ObservableExtensions)
Public Extension MethodObservableWhereT Returns an observable collection of objects of type T that contains all items of the source collection that pass the filter. See ObservableFilteredCollectionT for details.
(Defined by ObservableExtensions)
Public Extension MethodRemoveRangeT Removes a range of elements from the list.
(Defined by CollectionExtensions)
Public Extension MethodRemoveWhereT Removes the range of elements from the list that fulfill the condition.
(Defined by CollectionExtensions)
Public Extension MethodSafeCastT Performs a cast from object to T, avoiding possible null violations if T is a value type.
(Defined by ObjectExtensions)
Public Extension MethodSynchronizeWithT Synchronizes the items of the source list with the items of the target list. The order of the items is ignored.
(Defined by CollectionExtensions)
Public Extension MethodSynchronizeWithT Synchronizes the items of the source list with the items of the target list. The order of the items is ignored.
(Defined by CollectionExtensions)
Public Extension MethodToArrayT, TTarget Creates an array from a ICollectionT. This method is faster than using Enumerable.Select(selector).ToArray() because the size of the target array is known in advance.
(Defined by CollectionExtensions)
Public Extension MethodTryAddRangeT Adds the elements of the specified collection to the end of the list, but ignores all ArgumentException, e.g. when trying to add duplicate keys to a dictionary.
(Defined by CollectionExtensions)
Top
See Also