Dictionary<(Of <(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.
Namespace: System.Collections.Generic
Assembly: mscorlib (in mscorlib.dll)
Syntax
Private Function Contains ( _
key As Object _
) As Boolean Implements IDictionary.Contains
bool IDictionary.Contains(
Object key
)
Parameters
- key
Type: System..::.Object
The key to locate in the IDictionary.
Return Value
Type: System..::.Boolean
true if the IDictionary contains an element with the specified key; otherwise, false.
Implements
IDictionary..::.Contains(Object)
Exceptions
Exception | Condition |
---|---|
ArgumentNullException | key is nullNothingnullptra null reference (Nothing in Visual Basic). |
Remarks
This method returns false if key is of a type that is not assignable to the key type TKey of the Dictionary<(Of <(TKey, TValue>)>).
This method approaches an O(1) operation.
Examples
The following code example shows how to use the IDictionary..::.Contains method of the System.Collections..::.IDictionary interface with a Dictionary<(Of <(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.
Imports System.Collections
Imports System.Collections.Generic
Public Class Example
Public Shared Sub Demo(ByVal outputBlock As System.Windows.Controls.TextBlock)
' Create a new dictionary of strings, with string keys,
' and access it using the IDictionary interface.
'
Dim openWith As IDictionary = _
New Dictionary(Of 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 Not openWith.Contains("ht") Then
openWith.Add("ht", "hypertrm.exe")
outputBlock.Text &= String.Format("Value added for key = ""ht"": {0}", _
openWith("ht")) & vbCrLf
End If
' 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))
...
End Sub
End Class
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";
...
}
}
Version Information
Windows Phone OS
Supported in: 8.1, 8.0, 7.1, 7.0
Platforms
Windows Phone