DictionaryEntry Struktura
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Definiuje parę klucz/wartość słownika, którą można ustawić lub pobrać.
public value class DictionaryEntry
public struct DictionaryEntry
[System.Serializable]
public struct DictionaryEntry
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public struct DictionaryEntry
type DictionaryEntry = struct
[<System.Serializable>]
type DictionaryEntry = struct
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type DictionaryEntry = struct
Public Structure DictionaryEntry
- Dziedziczenie
- Atrybuty
Przykłady
W poniższym przykładzie pokazano użycie metody DictionaryEntry do iterowania po Hashtable obiekcie.
// A simple example for the DictionaryEntry structure.
using namespace System;
using namespace System::Collections;
public ref class Example
{
public:
static void Main()
{
// Create a new hash table.
//
Hashtable^ openWith = gcnew Hashtable();
// Add some elements to the hash table. There are no
// duplicate keys, but some of the values are duplicates.
openWith->Add("txt", "notepad.exe");
openWith->Add("bmp", "paint.exe");
openWith->Add("dib", "paint.exe");
openWith->Add("rtf", "wordpad.exe");
// When you use foreach to enumerate hash table elements,
// the elements are retrieved as DictionaryEntry objects.
Console::WriteLine();
for each (DictionaryEntry de in openWith)
{
Console::WriteLine("Key = {0}, Value = {1}", de.Key, de.Value);
}
}
};
int main()
{
Example::Main();
}
/* This code example produces output similar to the following:
Key = rtf, Value = wordpad.exe
Key = txt, Value = notepad.exe
Key = dib, Value = paint.exe
Key = bmp, Value = paint.exe
*/
// A simple example for the DictionaryEntry structure.
using System;
using System.Collections;
class Example
{
public static void Main()
{
// Create a new hash table.
//
Hashtable openWith = new Hashtable();
// Add some elements to the hash table. There are no
// duplicate keys, but some of the values are duplicates.
openWith.Add("txt", "notepad.exe");
openWith.Add("bmp", "paint.exe");
openWith.Add("dib", "paint.exe");
openWith.Add("rtf", "wordpad.exe");
// When you use foreach to enumerate hash table elements,
// the elements are retrieved as DictionaryEntry objects.
Console.WriteLine();
foreach (DictionaryEntry de in openWith)
{
Console.WriteLine("Key = {0}, Value = {1}", de.Key, de.Value);
}
}
}
/* This code example produces output similar to the following:
Key = rtf, Value = wordpad.exe
Key = txt, Value = notepad.exe
Key = dib, Value = paint.exe
Key = bmp, Value = paint.exe
*/
'A simple example for the DictionaryEntry structure.
Imports System.Collections
Module Example
Sub Main()
' Create a new hash table.
'
Dim openWith As New Hashtable()
' Add some elements to the hash table. There are no
' duplicate keys, but some of the values are duplicates.
openWith.Add("txt", "notepad.exe")
openWith.Add("bmp", "paint.exe")
openWith.Add("dib", "paint.exe")
openWith.Add("rtf", "wordpad.exe")
' When you use For Each to enumerate hash table elements,
' the elements are retrieved as DictionaryEntry objects.
Console.WriteLine()
For Each de As DictionaryEntry In openWith
Console.WriteLine("Key = {0}, Value = {1}", _
de.Key, de.Value)
Next de
End Sub
End Module
' This code example produces output similar to the following:
'
'Key = rtf, Value = wordpad.exe
'Key = txt, Value = notepad.exe
'Key = dib, Value = paint.exe
'Key = bmp, Value = paint.exe
Uwagi
Metoda IDictionaryEnumerator.Entry zwraca wystąpienie tego typu.
Ważne
Nie zalecamy używania DictionaryEntry
struktury do tworzenia nowych rozwiązań. Zamiast tego zalecamy użycie struktury ogólnej KeyValuePair<TKey,TValue> wraz z klasą Dictionary<TKey,TValue> . Aby uzyskać więcej informacji, zobacz Kolekcje nieogólne nie powinny być używane w usłudze GitHub.
Instrukcja foreach języka C# i instrukcja Visual Basic For Each wymagają typu każdego elementu w kolekcji. Ponieważ każdy element IDictionary elementu jest parą klucz/wartość, typ elementu nie jest typem klucza ani typem wartości. Zamiast tego typ elementu to DictionaryEntry. Na przykład:
for each (DictionaryEntry de in openWith)
{
Console::WriteLine("Key = {0}, Value = {1}", de.Key, de.Value);
}
foreach (DictionaryEntry de in openWith)
{
Console.WriteLine("Key = {0}, Value = {1}", de.Key, de.Value);
}
For Each de As DictionaryEntry In openWith
Console.WriteLine("Key = {0}, Value = {1}", _
de.Key, de.Value)
Next de
Instrukcja foreach
jest otoką wokół modułu wyliczającego, który umożliwia tylko odczyt z kolekcji, a nie do zapisu.
Konstruktory
DictionaryEntry(Object, Object) |
Inicjuje wystąpienie DictionaryEntry typu z określonym kluczem i wartością. |
Właściwości
Key |
Pobiera lub ustawia klucz w parze klucz/wartość. |
Value |
Pobiera lub ustawia wartość w parze klucz/wartość. |
Metody
Deconstruct(Object, Object) |
Dekonstrukuje bieżący DictionaryEntryelement . |