ServiceProviderHierarchy Class
Acts as a hierarchical service provider.
This API is not CLS-compliant.
Inheritance Hierarchy
System.Object
System.Collections.Generic.SortedList<Int32, IServiceProvider>
Microsoft.VisualStudio.Shell.ServiceProviderHierarchy
Namespace: Microsoft.VisualStudio.Shell
Assembly: Microsoft.VisualStudio.Shell.10.0 (in Microsoft.VisualStudio.Shell.10.0.dll)
Syntax
'Declaration
<CLSCompliantAttribute(False)> _
Public NotInheritable Class ServiceProviderHierarchy _
Inherits SortedList(Of Integer, IServiceProvider) _
Implements IServiceProvider
[CLSCompliantAttribute(false)]
public sealed class ServiceProviderHierarchy : SortedList<int, IServiceProvider>,
IServiceProvider
[CLSCompliantAttribute(false)]
public ref class ServiceProviderHierarchy sealed : public SortedList<int, IServiceProvider^>,
IServiceProvider
[<Sealed>]
[<CLSCompliantAttribute(false)>]
type ServiceProviderHierarchy =
class
inherit SortedList<int, IServiceProvider>
interface IServiceProvider
end
public final class ServiceProviderHierarchy extends SortedList<int, IServiceProvider> implements IServiceProvider
The ServiceProviderHierarchy type exposes the following members.
Constructors
Name | Description | |
---|---|---|
ServiceProviderHierarchy | Initializes a new instance of ServiceProviderHierarchy. |
Top
Properties
Name | Description | |
---|---|---|
Capacity | Gets or sets the number of elements that the SortedList<TKey, TValue> can contain. (Inherited from SortedList<Int32, IServiceProvider>.) | |
Comparer | Gets the IComparer<T> for the sorted list. (Inherited from SortedList<Int32, IServiceProvider>.) | |
Count | Gets the number of key/value pairs contained in the SortedList<TKey, TValue>. (Inherited from SortedList<Int32, IServiceProvider>.) | |
Item | Gets or sets the value associated with the specified key. (Inherited from SortedList<Int32, IServiceProvider>.) | |
Keys | Gets a collection containing the keys in the SortedList<TKey, TValue>. (Inherited from SortedList<Int32, IServiceProvider>.) | |
Values | Gets a collection containing the values in the SortedList<TKey, TValue>. (Inherited from SortedList<Int32, IServiceProvider>.) |
Top
Methods
Name | Description | |
---|---|---|
Add | Adds an element with the specified key and value into the SortedList<TKey, TValue>. (Inherited from SortedList<Int32, IServiceProvider>.) | |
Clear | Removes all elements from the SortedList<TKey, TValue>. (Inherited from SortedList<Int32, IServiceProvider>.) | |
ContainsKey | Determines whether the SortedList<TKey, TValue> contains a specific key. (Inherited from SortedList<Int32, IServiceProvider>.) | |
ContainsValue | Determines whether the SortedList<TKey, TValue> contains a specific value. (Inherited from SortedList<Int32, IServiceProvider>.) | |
Equals | Determines whether the specified Object is equal to the current Object. (Inherited from Object.) | |
Finalize | Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.) | |
GetEnumerator | Returns an enumerator that iterates through the SortedList<TKey, TValue>. (Inherited from SortedList<Int32, IServiceProvider>.) | |
GetHashCode | Serves as a hash function for a particular type. (Inherited from Object.) | |
GetService | Gets a service of the specified type. | |
GetType | Gets the Type of the current instance. (Inherited from Object.) | |
IndexOfKey | Searches for the specified key and returns the zero-based index within the entire SortedList<TKey, TValue>. (Inherited from SortedList<Int32, IServiceProvider>.) | |
IndexOfValue | Searches for the specified value and returns the zero-based index of the first occurrence within the entire SortedList<TKey, TValue>. (Inherited from SortedList<Int32, IServiceProvider>.) | |
MemberwiseClone | Creates a shallow copy of the current Object. (Inherited from Object.) | |
Remove | Removes the element with the specified key from the SortedList<TKey, TValue>. (Inherited from SortedList<Int32, IServiceProvider>.) | |
RemoveAt | Removes the element at the specified index of the SortedList<TKey, TValue>. (Inherited from SortedList<Int32, IServiceProvider>.) | |
ToString | Returns a string that represents the current object. (Inherited from Object.) | |
TrimExcess | Sets the capacity to the actual number of elements in the SortedList<TKey, TValue>, if that number is less than 90 percent of current capacity. (Inherited from SortedList<Int32, IServiceProvider>.) | |
TryGetValue | Gets the value associated with the specified key. (Inherited from SortedList<Int32, IServiceProvider>.) |
Top
Explicit Interface Implementations
Name | Description | |
---|---|---|
ICollection<KeyValuePair<TKey, TValue>>.Add | Adds a key/value pair to the ICollection<T>. (Inherited from SortedList<Int32, IServiceProvider>.) | |
IDictionary.Add | Adds an element with the provided key and value to the IDictionary. (Inherited from SortedList<Int32, IServiceProvider>.) | |
ICollection<KeyValuePair<TKey, TValue>>.Contains | Determines whether the ICollection<T> contains a specific element. (Inherited from SortedList<Int32, IServiceProvider>.) | |
IDictionary.Contains | Determines whether the IDictionary contains an element with the specified key. (Inherited from SortedList<Int32, IServiceProvider>.) | |
ICollection<KeyValuePair<TKey, TValue>>.CopyTo | Copies the elements of the ICollection<T> to an Array, starting at a particular Array index. (Inherited from SortedList<Int32, IServiceProvider>.) | |
ICollection.CopyTo | Copies the elements of the ICollection to an Array, starting at a particular Array index. (Inherited from SortedList<Int32, IServiceProvider>.) | |
IEnumerable<KeyValuePair<TKey, TValue>>.GetEnumerator | Returns an enumerator that iterates through a collection. (Inherited from SortedList<Int32, IServiceProvider>.) | |
IDictionary.GetEnumerator | Returns an IDictionaryEnumerator for the IDictionary. (Inherited from SortedList<Int32, IServiceProvider>.) | |
IEnumerable.GetEnumerator | Returns an enumerator that iterates through a collection. (Inherited from SortedList<Int32, IServiceProvider>.) | |
IDictionary.IsFixedSize | Gets a value indicating whether the IDictionary has a fixed size. (Inherited from SortedList<Int32, IServiceProvider>.) | |
ICollection<KeyValuePair<TKey, TValue>>.IsReadOnly | Gets a value indicating whether the ICollection<T> is read-only. (Inherited from SortedList<Int32, IServiceProvider>.) | |
IDictionary.IsReadOnly | Gets a value indicating whether the IDictionary is read-only. (Inherited from SortedList<Int32, IServiceProvider>.) | |
ICollection.IsSynchronized | Gets a value indicating whether access to the ICollection is synchronized (thread safe). (Inherited from SortedList<Int32, IServiceProvider>.) | |
IDictionary.Item | Gets or sets the element with the specified key. (Inherited from SortedList<Int32, IServiceProvider>.) | |
IDictionary<TKey, TValue>.Keys | Gets an ICollection<T> containing the keys of the IDictionary<TKey, TValue>. (Inherited from SortedList<Int32, IServiceProvider>.) | |
IDictionary.Keys | Gets an ICollection containing the keys of the IDictionary. (Inherited from SortedList<Int32, IServiceProvider>.) | |
ICollection<KeyValuePair<TKey, TValue>>.Remove | Removes the first occurrence of a specific key/value pair from the ICollection<T>. (Inherited from SortedList<Int32, IServiceProvider>.) | |
IDictionary.Remove | Removes the element with the specified key from the IDictionary. (Inherited from SortedList<Int32, IServiceProvider>.) | |
ICollection.SyncRoot | Gets an object that can be used to synchronize access to the ICollection. (Inherited from SortedList<Int32, IServiceProvider>.) | |
IDictionary<TKey, TValue>.Values | Gets an ICollection<T> containing the values in the IDictionary<TKey, TValue>. (Inherited from SortedList<Int32, IServiceProvider>.) | |
IDictionary.Values | Gets an ICollection containing the values in the IDictionary. (Inherited from SortedList<Int32, IServiceProvider>.) |
Top
Remarks
It stores IServiceProvider objects in a sorted dictionary for an ordered retrieval. When GetService is called to retrieve a service, the service providers are queried in a specific order. This is useful when multiple service providers are combined such as in the WindowPane implementation.
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.