Dictionary<TKey, TValue>.IDictionary.Contains Method
[ This article is for Windows Phone 8 developers. If you’re developing for Windows 10, see the latest documentation. ]
Determines whether the IDictionary contains an element with the specified key.
Assembly: mscorlib (in mscorlib.dll)
Parameters
- key
- Type: System.Object
The key to locate in the IDictionary.
Return Value
Type: System.Booleantrue if the IDictionary contains an element with the specified key; otherwise, false.
Implements
IDictionary.Contains(Object)| Exception | Condition |
|---|---|
| ArgumentNullException | key is null. |
This method returns false if key is of a type that is not assignable to the key type TKey of the Dictionary<TKey, TValue>.
This method approaches an O(1) operation.
The following code example shows how to use the IDictionary.Contains method of the System.Collections.IDictionary interface with a Dictionary<TKey, TValue>. The example demonstrates that the method returns false if a key of the wrong data type is supplied.
The code example is part of a larger example, including output, provided for the IDictionary.Add method.
using System; using System.Collections; using System.Collections.Generic; public class Example { public static void Demo(System.Windows.Controls.TextBlock outputBlock) { // Create a new dictionary of strings, with string keys, // and access it using the IDictionary interface. // IDictionary openWith = new Dictionary<string, string>(); // Add some elements to the dictionary. There are no // duplicate keys, but some of the values are duplicates. // IDictionary.Add throws an exception if incorrect types // are supplied for key or value. openWith.Add("txt", "notepad.exe"); openWith.Add("bmp", "paint.exe"); openWith.Add("dib", "paint.exe"); openWith.Add("rtf", "wordpad.exe"); ... // Contains can be used to test keys before inserting // them. if (!openWith.Contains("ht")) { openWith.Add("ht", "hypertrm.exe"); outputBlock.Text += String.Format("Value added for key = \"ht\": {0}", openWith["ht"]) + "\n"; } // IDictionary.Contains returns false if the wrong data // type is supplied. outputBlock.Text += String.Format("openWith.Contains(29.7) returns {0}", openWith.Contains(29.7)) + "\n"; ... } }