This documentation is archived and is not being maintained.

ResourceDictionary.Item Property

Gets or sets the value associated with the given key.

Namespace:  System.Windows
Assembly:  PresentationFramework (in PresentationFramework.dll)

public Object this[
	Object key
] { get; set; }
See Remarks.


Type: System.Object
The desired key to get or set.

Property Value

Type: System.Object
Value of the key.



If the requested key is not in this resource dictionary, the framework resource system will also check the merged dictionaries.

Checking a ResourceDictionary by item or index is not generally the preferred way to retrieve resources. You should instead call methods that are capable of participating in the full resource lookup process and look up resources by their keys, and that can find the resources in applications or themes. FindResource is such a method, and is present on any FrameworkElement. Otherwise your attempt to find the resource does not match the true run-time behavior.

However, obtaining resources directly from an individual dictionary might be appropriate if you are retrieving resources from a known ResourceDictionary location, and are doing so to avoid the possible performance and scope implications of run-time key lookup.

You do not use indexers to define collection members in XAML. Instead, you create child elements in markup. The child elements are either child elements of ResourceDictionary, or of a property element where the property type is ResourceDictionary. For details, see the XAML usage sections in ResourceDictionary.

.NET Framework

Supported in: 4, 3.5, 3.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

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