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
Čtenář byl zavřený nebo uvolněný a nelze k němu získat přístup.
Příklady
V příkladu v této části se k definování prostředků používaných aplikací používá následující .txt soubor s názvem PatientForm.txt .
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 spuštěním následujícího příkazu:
resgen PatientForm.txt
Následující příklad vytvoří výčet prostředků 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 opakovaným voláním MoveNext metody na vrácený IDictionaryEnumerator objekt, dokud metoda nevrátí false. Název prostředku je k dispozici z IDictionaryEnumerator.Key vlastnosti; jeho hodnota z IDictionaryEnumerator.Value vlastnosti. Tento příklad ukazuje, jak tímto způsobem vytvořit výčet prostředků.
IDictionaryEnumerator.Value Implementace vlastnosti třídy ResourceReader 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, do kterého data patří, nelze najít.
Výjimku můžete zpracovat voláním GetResourceData metody, která načte informace o datovém typu a pole bajtů přiřazené k pojmenovaným prostředkům. Další informace naleznete 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é vracejí výčty. Metoda GetEnumerator vrátí IDictionaryEnumerator objekt rozhraní a je doporučenou metodou volání při vytváření výčtu prostředků.