KeyedByTypeCollection<TItem> Class

Provides a collection whose items are types that serve as keys.

Namespace:  System.Collections.Generic
Assembly:  System.ServiceModel (in System.ServiceModel.dll)

public class KeyedByTypeCollection<TItem> : KeyedCollection<Type, TItem>

Type Parameters

TItem

The item types contained in the collection that also serve as the keys for the collection.

The KeyedByTypeCollection<TItem> type exposes the following members.

  NameDescription
Public methodKeyedByTypeCollection<TItem>()Initializes a new instance of the KeyedByTypeCollection<TItem> class.
Public methodKeyedByTypeCollection<TItem>(IEnumerable<TItem>)Initializes a new instance of the KeyedByTypeCollection<TItem> class for a specified enumeration of objects.
Top

  NameDescription
Public propertyComparerGets the generic equality comparer that is used to determine equality of keys in the collection. (Inherited from KeyedCollection<TKey, TItem>.)
Public propertyCountGets the number of elements actually contained in the Collection<T>. (Inherited from Collection<T>.)
Protected propertyDictionaryGets the lookup dictionary of the KeyedCollection<TKey, TItem>. (Inherited from KeyedCollection<TKey, TItem>.)
Public propertyItem[TKey]Gets the element with the specified key. (Inherited from KeyedCollection<TKey, TItem>.)
Public propertyItem[Int32]Gets or sets the element at the specified index. (Inherited from Collection<T>.)
Protected propertyItemsGets a IList<T> wrapper around the Collection<T>. (Inherited from Collection<T>.)
Top

  NameDescription
Public methodAddAdds an object to the end of the Collection<T>. (Inherited from Collection<T>.)
Protected methodChangeItemKeyChanges the key associated with the specified element in the lookup dictionary. (Inherited from KeyedCollection<TKey, TItem>.)
Public methodClearRemoves all elements from the Collection<T>. (Inherited from Collection<T>.)
Protected methodClearItemsRemoves all elements from the KeyedCollection<TKey, TItem>. (Inherited from KeyedCollection<TKey, TItem>.)
Public methodContains(T)Determines whether an element is in the Collection<T>. (Inherited from Collection<T>.)
Public methodContains(TKey)Determines whether the collection contains an element with the specified key. (Inherited from KeyedCollection<TKey, TItem>.)
Public methodCopyToCopies the entire Collection<T> to a compatible one-dimensional Array, starting at the specified index of the target array. (Inherited from Collection<T>.)
Public methodEquals(Object)Determines whether the specified object is equal to the current object. (Inherited from Object.)
Protected methodFinalizeAllows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.)
Public methodFind<T>Returns the first item in the collection of a specified type.
Public methodFindAll<T>Returns a collection of objects of type T that are contained in the KeyedByTypeCollection<TItem>.
Public methodGetEnumeratorReturns an enumerator that iterates through the Collection<T>. (Inherited from Collection<T>.)
Public methodGetHashCodeServes as the default hash function. (Inherited from Object.)
Protected methodGetKeyForItemGets the type of an item contained in the collection. (Overrides KeyedCollection<TKey, TItem>.GetKeyForItem(TItem).)
Public methodGetTypeGets the Type of the current instance. (Inherited from Object.)
Public methodIndexOfSearches for the specified object and returns the zero-based index of the first occurrence within the entire Collection<T>. (Inherited from Collection<T>.)
Public methodInsertInserts an element into the Collection<T> at the specified index. (Inherited from Collection<T>.)
Protected methodInsertItemInserts an element into the collection at a specific location. (Overrides KeyedCollection<TKey, TItem>.InsertItem(Int32, TItem).)
Protected methodMemberwiseCloneCreates a shallow copy of the current Object. (Inherited from Object.)
Public methodRemove(T)Removes the first occurrence of a specific object from the Collection<T>. (Inherited from Collection<T>.)
Public methodRemove(TKey)Removes the element with the specified key from the KeyedCollection<TKey, TItem>. (Inherited from KeyedCollection<TKey, TItem>.)
Public methodRemove<T>()Removes an object of a specified type from the collection.
Public methodRemoveAll<T>Removes all of the elements of a specified type from the collection.
Public methodRemoveAtRemoves the element at the specified index of the Collection<T>. (Inherited from Collection<T>.)
Protected methodRemoveItemRemoves the element at the specified index of the KeyedCollection<TKey, TItem>. (Inherited from KeyedCollection<TKey, TItem>.)
Protected methodSetItemReplaces the item at the specified index with a new object. (Overrides KeyedCollection<TKey, TItem>.SetItem(Int32, TItem).)
Public methodToStringReturns a string that represents the current object. (Inherited from Object.)
Top

  NameDescription
Explicit interface implemetationPrivate methodICollection.CopyToCopies the elements of the ICollection to an Array, starting at a particular Array index. (Inherited from Collection<T>.)
Explicit interface implemetationPrivate propertyICollection<T>.IsReadOnlyGets a value indicating whether the ICollection<T> is read-only. (Inherited from Collection<T>.)
Explicit interface implemetationPrivate propertyICollection.IsSynchronizedGets a value indicating whether access to the ICollection is synchronized (thread safe). (Inherited from Collection<T>.)
Explicit interface implemetationPrivate propertyICollection.SyncRootGets an object that can be used to synchronize access to the ICollection. (Inherited from Collection<T>.)
Explicit interface implemetationPrivate methodIEnumerable.GetEnumeratorReturns an enumerator that iterates through a collection. (Inherited from Collection<T>.)
Explicit interface implemetationPrivate methodIList.AddAdds an item to the IList. (Inherited from Collection<T>.)
Explicit interface implemetationPrivate methodIList.ContainsDetermines whether the IList contains a specific value. (Inherited from Collection<T>.)
Explicit interface implemetationPrivate methodIList.IndexOfDetermines the index of a specific item in the IList. (Inherited from Collection<T>.)
Explicit interface implemetationPrivate methodIList.InsertInserts an item into the IList at the specified index. (Inherited from Collection<T>.)
Explicit interface implemetationPrivate propertyIList.IsFixedSizeGets a value indicating whether the IList has a fixed size. (Inherited from Collection<T>.)
Explicit interface implemetationPrivate propertyIList.IsReadOnlyGets a value indicating whether the IList is read-only. (Inherited from Collection<T>.)
Explicit interface implemetationPrivate propertyIList.ItemGets or sets the element at the specified index. (Inherited from Collection<T>.)
Explicit interface implemetationPrivate methodIList.RemoveRemoves the first occurrence of a specific object from the IList. (Inherited from Collection<T>.)
Top

Only one object of each type is allowed in the collection because the type is the key and each key must be unique. But you can find objects of different types.

.NET Framework

Supported in: 4.5.2, 4.5.1, 4.5, 4, 3.5, 3.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

.NET for Windows Phone apps

Supported in: Windows Phone 8.1, Windows Phone 8, Silverlight 8.1

Windows Phone 8.1, Windows Phone 8, Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core Role not supported), Windows Server 2008 R2 (Server Core Role supported with SP1 or later; Itanium not supported)

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.
Was this page helpful?
(1500 characters remaining)
Thank you for your feedback
Show:
© 2014 Microsoft