ResourceReader.GetEnumerator Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Vrátí enumerátor pro tento ResourceReader objekt.
public:
virtual System::Collections::IDictionaryEnumerator ^ GetEnumerator();
public:
System::Collections::IDictionaryEnumerator ^ GetEnumerator();
public System.Collections.IDictionaryEnumerator GetEnumerator ();
abstract member GetEnumerator : unit -> System.Collections.IDictionaryEnumerator
override this.GetEnumerator : unit -> System.Collections.IDictionaryEnumerator
member this.GetEnumerator : unit -> System.Collections.IDictionaryEnumerator
Public Function GetEnumerator () As IDictionaryEnumerator
Návraty
Enumerátor pro tento ResourceReader objekt.
Implementuje
Výjimky
Čtečka byla zavřena nebo odstraněna a není k dispozici.
Příklady
Příklad v této části používá následující .txt soubor s názvem PatientForm.txt
k definování prostředků používaných aplikací.
Title="Top Pet Animal Clinic"
Label1="Patient Number:"
Label2="Pet Name:"
Label3="Species:"
Label4="Breed:"
Label5="Date of Birth:"
Label6="Age:"
Label7="Owner:"
Label8="Address:"
Label9="Home Phone:"
Label10="Work Phone:"
Label11="Mobile Phone:"
Soubor .txt můžete zkompilovat do souboru .resources zadáním následujícího příkazu:
resgen PatientForm.txt
Následující příklad vytvoří výčet prostředků v PatientForm.resources
a zobrazí název a hodnotu každého z nich.
using System;
using System.Collections;
using System.Resources;
public class Example
{
public static void Main()
{
var rr = new ResourceReader("PatientForm.resources");
IDictionaryEnumerator dict = rr.GetEnumerator();
int ctr = 0;
while (dict.MoveNext()) {
ctr++;
Console.WriteLine("{0:00}: {1} = {2}", ctr, dict.Key, dict.Value);
}
rr.Close();
}
}
// The example displays the following output:
// 01: Label3 = "Species:"
// 02: Label2 = "Pet Name:"
// 03: Label1 = "Patient Number:"
// 04: Label7 = "Owner:"
// 05: Label6 = "Age:"
// 06: Label5 = "Date of Birth:"
// 07: Label4 = "Breed:"
// 08: Label9 = "Home Phone:"
// 09: Label8 = "Address:"
// 10: Title = "Top Pet Animal Clinic"
// 11: Label10 = "Work Phone:"
// 12: Label11 = "Mobile Phone:"
Imports System.Collections
Imports System.Resources
Module Example
Public Sub Main()
Dim rr As New ResourceReader("PatientForm.resources")
Dim dict As IDictionaryEnumerator = rr.GetEnumerator
Dim ctr As Integer
Do While dict.MoveNext()
ctr += 1
Console.WriteLine("{0:00}: {1} = {2}", ctr, dict.Key, dict.Value)
Loop
rr.Close()
End Sub
End Module
' The example displays the following output:
' 01: Label3 = "Species:"
' 02: Label2 = "Pet Name:"
' 03: Label1 = "Patient Number:"
' 04: Label7 = "Owner:"
' 05: Label6 = "Age:"
' 06: Label5 = "Date of Birth:"
' 07: Label4 = "Breed:"
' 08: Label9 = "Home Phone:"
' 09: Label8 = "Address:"
' 10: Title = "Top Pet Animal Clinic"
' 11: Label10 = "Work Phone:"
' 12: Label11 = "Mobile Phone:"
Poznámky
Obvykle vytvoříte výčet prostředků voláním GetEnumerator metody a pak opakovaně voláte metodu MoveNext na vrácený IDictionaryEnumerator objekt, dokud metoda nevrátí false
. Název prostředku je k dispozici z IDictionaryEnumerator.Key vlastnosti, jeho hodnota je z vlastnosti IDictionaryEnumerator.Value . Tento příklad ukazuje, jak tímto způsobem vytvořit výčet prostředků.
Implementace IDictionaryEnumerator.Value vlastnosti ResourceReader třídou může vyvolat následující výjimky:
-
Sestavení obsahující typ, do kterého data patří, nelze najít.
-
Data nejsou v očekávaném formátu.
-
Typ, ke kterému data patří, nebyl nalezen.
Výjimku můžete zpracovat voláním GetResourceData metody, která načte informace o datovém typu a bajtovém poli přiřazeném k pojmenovaným prostředkům. Další informace najdete v části "Načítání prostředků podle názvu pomocí GetResourceData" v ResourceReader tématu třídy.
Důležité
Třída ResourceReader obsahuje dvě metody, které vrací enumerátory. Metoda GetEnumerator vrátí IDictionaryEnumerator objekt rozhraní a je doporučenou metodou volání při výčtu prostředků.