Share via


TransformedCollection<TSourceCollection, TSourceElement, TTargetElement> Class

Provides a live transformation of elements from a mutable source collection.

Inheritance Hierarchy

System.Object
  System.Collections.ObjectModel.ReadOnlyCollection<TTargetElement>
    Microsoft.TeamFoundation.MVVM.TransformedCollection<TSourceCollection, TSourceElement, TTargetElement>

Namespace:  Microsoft.TeamFoundation.MVVM
Assembly:  Microsoft.TeamFoundation.Controls (in Microsoft.TeamFoundation.Controls.dll)

Syntax

'Declaration
Public Class TransformedCollection(Of TSourceCollection As {Class, Object, IEnumerable(Of TSourceElement), INotifyCollectionChanged}, TSourceElement, TTargetElement) _
    Inherits ReadOnlyCollection(Of TTargetElement) _
    Implements INotifyCollectionChanged, INotifyPropertyChanged, IWeakEventListener, IDisposable
public class TransformedCollection<TSourceCollection, TSourceElement, TTargetElement> : ReadOnlyCollection<TTargetElement>, 
    INotifyCollectionChanged, INotifyPropertyChanged, IWeakEventListener, IDisposable 
where TSourceCollection : class, Object, IEnumerable<TSourceElement>, INotifyCollectionChanged
generic<typename TSourceCollection, typename TSourceElement, typename TTargetElement>
where TSourceCollection : ref class, Object, IEnumerable<TSourceElement>, INotifyCollectionChanged 
public ref class TransformedCollection : public ReadOnlyCollection<TTargetElement>, 
    INotifyCollectionChanged, INotifyPropertyChanged, IWeakEventListener, IDisposable
type TransformedCollection<'TSourceCollection, 'TSourceElement, 'TTargetElement when 'TSourceCollection : not struct and Object and IEnumerable<'TSourceElement> and INotifyCollectionChanged> =  
    class 
        inherit ReadOnlyCollection<'TTargetElement>
        interface INotifyCollectionChanged 
        interface INotifyPropertyChanged 
        interface IWeakEventListener 
        interface IDisposable 
    end
JScript does not support generic types or methods.

Type Parameters

  • TSourceCollection
    The type of the source collection that this collection wraps.
  • TSourceElement
    The type of the elements in the source collection.
  • TTargetElement
    The type of the transformed elements in this collection.

The TransformedCollection<TSourceCollection, TSourceElement, TTargetElement> type exposes the following members.

Constructors

  Name Description
Public method TransformedCollection<TSourceCollection, TSourceElement, TTargetElement>

Top

Properties

  Name Description
Public property Count Gets the number of elements contained in the ReadOnlyCollection<T> instance. (Inherited from ReadOnlyCollection<TTargetElement>.)
Public property Item Gets the element at the specified index. (Inherited from ReadOnlyCollection<TTargetElement>.)
Protected property Items Returns the IList<T> that the ReadOnlyCollection<T> wraps. (Inherited from ReadOnlyCollection<TTargetElement>.)

Top

Methods

  Name Description
Public method Contains Determines whether an element is in the ReadOnlyCollection<T>. (Inherited from ReadOnlyCollection<TTargetElement>.)
Public method CopyTo Copies the entire ReadOnlyCollection<T> to a compatible one-dimensional Array, starting at the specified index of the target array. (Inherited from ReadOnlyCollection<TTargetElement>.)
Public method Dispose() Tears down all elements of the transformed collection, clears the transformed collection, and stops listening to change events on the source collection.
Protected method Dispose(Boolean)
Public method Equals Determines whether the specified object is equal to the current object. (Inherited from Object.)
Protected method Finalize Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.)
Public method GetEnumerator Returns an enumerator that iterates through the ReadOnlyCollection<T>. (Inherited from ReadOnlyCollection<TTargetElement>.)
Public method GetHashCode Serves as a hash function for a particular type. (Inherited from Object.)
Public method GetType Gets the Type of the current instance. (Inherited from Object.)
Public method IndexOf Searches for the specified object and returns the zero-based index of the first occurrence within the entire ReadOnlyCollection<T>. (Inherited from ReadOnlyCollection<TTargetElement>.)
Protected method MemberwiseClone Creates a shallow copy of the current Object. (Inherited from Object.)
Protected method OnCollectionChanged
Protected method OnPropertyChanged
Protected method ReceiveWeakEvent
Public method ToString Returns a string that represents the current object. (Inherited from Object.)

Top

Events

  Name Description
Public event CollectionChanged Occurs when the collection changes.
Public event PropertyChanged Occurs when a property changes.

Top

Explicit Interface Implementations

  Name Description
Explicit interface implemetationPrivate method IWeakEventListener.ReceiveWeakEvent
Explicit interface implemetationPrivate method ICollection<T>.Add Adds an item to the ICollection<T>. This implementation always throws NotSupportedException. (Inherited from ReadOnlyCollection<TTargetElement>.)
Explicit interface implemetationPrivate method IList.Add Adds an item to the IList. This implementation always throws NotSupportedException. (Inherited from ReadOnlyCollection<TTargetElement>.)
Explicit interface implemetationPrivate method ICollection<T>.Clear Removes all items from the ICollection<T>. This implementation always throws NotSupportedException. (Inherited from ReadOnlyCollection<TTargetElement>.)
Explicit interface implemetationPrivate method IList.Clear Removes all items from the IList. This implementation always throws NotSupportedException. (Inherited from ReadOnlyCollection<TTargetElement>.)
Explicit interface implemetationPrivate method IList.Contains Determines whether the IList contains a specific value. (Inherited from ReadOnlyCollection<TTargetElement>.)
Explicit interface implemetationPrivate method ICollection.CopyTo Copies the elements of the ICollection to an Array, starting at a particular Array index. (Inherited from ReadOnlyCollection<TTargetElement>.)
Explicit interface implemetationPrivate method IEnumerable.GetEnumerator Returns an enumerator that iterates through a collection. (Inherited from ReadOnlyCollection<TTargetElement>.)
Explicit interface implemetationPrivate method IList.IndexOf Determines the index of a specific item in the IList. (Inherited from ReadOnlyCollection<TTargetElement>.)
Explicit interface implemetationPrivate method IList<T>.Insert Inserts an item to the IList<T> at the specified index. This implementation always throws NotSupportedException. (Inherited from ReadOnlyCollection<TTargetElement>.)
Explicit interface implemetationPrivate method IList.Insert Inserts an item to the IList at the specified index. This implementation always throws NotSupportedException. (Inherited from ReadOnlyCollection<TTargetElement>.)
Explicit interface implemetationPrivate property IList.IsFixedSize Gets a value indicating whether the IList has a fixed size. (Inherited from ReadOnlyCollection<TTargetElement>.)
Explicit interface implemetationPrivate property ICollection<T>.IsReadOnly Gets a value indicating whether the ICollection<T> is read-only. (Inherited from ReadOnlyCollection<TTargetElement>.)
Explicit interface implemetationPrivate property IList.IsReadOnly Gets a value indicating whether the IList is read-only. (Inherited from ReadOnlyCollection<TTargetElement>.)
Explicit interface implemetationPrivate property ICollection.IsSynchronized Gets a value indicating whether access to the ICollection is synchronized (thread safe). (Inherited from ReadOnlyCollection<TTargetElement>.)
Explicit interface implemetationPrivate property IList<T>.Item Gets or sets the element at the specified index. (Inherited from ReadOnlyCollection<TTargetElement>.)
Explicit interface implemetationPrivate property IList.Item Gets or sets the element at the specified index. (Inherited from ReadOnlyCollection<TTargetElement>.)
Explicit interface implemetationPrivate method ICollection<T>.Remove Removes the first occurrence of a specific object from the ICollection<T>. This implementation always throws NotSupportedException. (Inherited from ReadOnlyCollection<TTargetElement>.)
Explicit interface implemetationPrivate method IList.Remove Removes the first occurrence of a specific object from the IList. This implementation always throws NotSupportedException. (Inherited from ReadOnlyCollection<TTargetElement>.)
Explicit interface implemetationPrivate method IList<T>.RemoveAt Removes the IList<T> item at the specified index. This implementation always throws NotSupportedException. (Inherited from ReadOnlyCollection<TTargetElement>.)
Explicit interface implemetationPrivate method IList.RemoveAt Removes the IList item at the specified index. This implementation always throws NotSupportedException. (Inherited from ReadOnlyCollection<TTargetElement>.)
Explicit interface implemetationPrivate property ICollection.SyncRoot Gets an object that can be used to synchronize access to the ICollection. (Inherited from ReadOnlyCollection<TTargetElement>.)

Top

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

See Also

Reference

Microsoft.TeamFoundation.MVVM Namespace