ResXResourceSet Klass

Definition

Representerar alla resurser i en XML-resursfil (.resx).

public ref class ResXResourceSet : System::Resources::ResourceSet
public class ResXResourceSet : System.Resources.ResourceSet
type ResXResourceSet = class
    inherit ResourceSet
Public Class ResXResourceSet
Inherits ResourceSet
Arv
ResXResourceSet

Exempel

I följande exempel instansierar ett ResXResourceSet objekt och visar hur du räknar upp dess resurser och hämtar enskilda resurser efter namn. För varje resurs som räknas upp använder IDictionaryEnumerator.Key exemplet egenskapen i ett anrop till GetString metoden eller GetObject , beroende på om värdet för resursen är en sträng eller ett objekt.

using System;
using System.Collections;
using System.Drawing;
using System.Resources;

public class Example
{
   public static void Main()
   {
      CreateResXFile();
      
      ResXResourceSet resSet = new ResXResourceSet(@".\StoreResources.resx");
      IDictionaryEnumerator dict = resSet.GetEnumerator();
      while (dict.MoveNext()) {
         string key = (string) dict.Key;
         // Retrieve resource by name.
         if (dict.Value is string)
            Console.WriteLine("{0}: {1}", key, resSet.GetString(key));
         else
            Console.WriteLine("{0}: {1}", key, resSet.GetObject(key));   
      }
   }

   private static void CreateResXFile()
   {
      Bitmap logo = new Bitmap(@".\Logo.bmp");
      ResXDataNode node;
      
      ResXResourceWriter rw = new ResXResourceWriter(@".\StoreResources.resx");
      node = new ResXDataNode("Logo", logo);
      node.Comment = "The corporate logo.";
      rw.AddResource(node); 
      rw.AddResource("AppTitle", "Store Locations");
      node = new ResXDataNode("nColumns", 5);
      node.Comment = "The number of columns in the Store Location table";
      rw.AddResource(node);
      rw.AddResource("City", "City");
      rw.AddResource("State", "State");
      rw.AddResource("Code", "Zip Code");
      rw.AddResource("Telephone", "Phone");
      rw.Generate();
      rw.Close();
   }
}
// The example displays the following output:
//       Telephone: Phone
//       Code: Zip Code
//       State: State
//       City: City
//       nColumns: 5
//       AppTitle: Store Locations
//       Logo: System.Drawing.Bitmap
Imports System.Collections
Imports System.Drawing
Imports System.Resources

Module Example
   Public Sub Main()
      CreateResXFile()
      
      Dim resSet As New ResXResourceSet(".\StoreResources.resx")
      Dim dict As IDictionaryEnumerator = resSet.GetEnumerator()
      Do While dict.MoveNext()
         Dim key As String = CStr(dict.Key)
         ' Retrieve resource by name.
         If typeof dict.Value Is String Then
            Console.WriteLine("{0}: {1}", key, resSet.GetString(key))
         Else
            Console.WriteLine("{0}: {1}", key, resSet.GetObject(key))   
         End If
      Loop
   End Sub
   
   Private Sub CreateResXFile()
      Dim logo As New Bitmap(".\Logo.bmp")
      Dim node As ResXDataNode
      
      Dim rw As New ResXResourceWriter(".\StoreResources.resx")
      node = New ResXDataNode("Logo", logo)
      node.Comment = "The corporate logo."
      rw.AddResource(node) 
      rw.AddResource("AppTitle", "Store Locations")
      node = New ResXDataNode("nColumns", 5)
      node.Comment = "The number of columns in the Store Location table"
      rw.AddResource(node)
      rw.AddResource("City", "City")
      rw.AddResource("State", "State")
      rw.AddResource("Code", "Zip Code")
      rw.AddResource("Telephone", "Phone")
      rw.Generate()
      rw.Close()
   End Sub
End Module
' The example displays the following output:
'       Telephone: Phone
'       Code: Zip Code
'       State: State
'       City: City
'       nColumns: 5
'       AppTitle: Store Locations
'       Logo: System.Drawing.Bitmap

Exemplet anropar en CreateResXFile metod för att skapa nödvändig XML-resursfil. Det kräver en bitmappsfil med namnet Logo.bmp i katalogen där exemplet körs.

Kommentarer

Important

Att anropa metoder från den här klassen med ej betrodda data är en säkerhetsrisk. Anropa metoderna från den här klassen endast med betrodda data. För mer information, se Verifiera alla indata.

Klassen ResXResourceSet räknar upp över ett IResourceReader, läser in varje namn och värde och lagrar dem i en hash-tabell. Du kan sedan räkna upp resurserna i ResXResourceSet objektet eller hämta enskilda resurser efter namn.

Ett ResXResourceSet objekt är ett bekvämt sätt att läsa alla resurser i en .resx-fil i minnet. Du kan använda GetObject metoden för att hämta en viss resurs när .resx-filen har lästs in i en ResXResourceSet instans.

Anteckningar till arvingar

Härledda klasser av ResXResourceSet som använder sin egen resursläsare och skrivare bör åsidosätta GetDefaultReader() metoderna och GetDefaultWriter() för att tillhandahålla lämpliga funktioner för att tolka instansen ResXResourceSet .

Konstruktorer

Name Description
ResXResourceSet(Stream)

Initierar en ny instans av klassen med hjälp av ResXResourceSet systemets standardvärde ResXResourceReader för att läsa resurser från den angivna strömmen.

ResXResourceSet(String)

Initierar en ny instans av ResXResourceSet klassen med systemstandarden ResXResourceReader som öppnar och läser resurser från den angivna filen.

Fält

Name Description
Reader

Anger den IResourceReader som används för att läsa resurserna.

(Ärvd från ResourceSet)
Table

I Hashtable vilken resurserna lagras.

(Ärvd från ResourceSet)

Metoder

Name Description
Close()

Stänger och släpper alla resurser som används av den här ResourceSet.

(Ärvd från ResourceSet)
Dispose()

Gör sig av med de resurser (förutom minne) som används av den aktuella instansen av ResourceSet.

(Ärvd från ResourceSet)
Dispose(Boolean)

Frigör resurser (förutom minne) som är associerade med den aktuella instansen och stänger interna hanterade objekt om det begärs.

(Ärvd från ResourceSet)
Equals(Object)

Avgör om det angivna objektet är lika med det aktuella objektet.

(Ärvd från Object)
GetDefaultReader()

Returnerar den föredragna resursläsarklassen för den här typen av ResXResourceSet.

GetDefaultWriter()

Returnerar den föredragna resursskrivareklassen för den här typen av ResXResourceSet.

GetEnumerator()

Returnerar en IDictionaryEnumerator som kan iterera via ResourceSet.

(Ärvd från ResourceSet)
GetHashCode()

Fungerar som standard-hash-funktion.

(Ärvd från Object)
GetObject(String, Boolean)

Söker efter ett resursobjekt med det angivna namnet på ett skiftlägesokänsligt sätt om det begärs.

(Ärvd från ResourceSet)
GetObject(String)

Söker efter ett resursobjekt med det angivna namnet.

(Ärvd från ResourceSet)
GetString(String, Boolean)

Söker efter en String resurs med det angivna namnet på ett skiftlägesokänsligt sätt om det begärs.

(Ärvd från ResourceSet)
GetString(String)

Söker efter en String resurs med det angivna namnet.

(Ärvd från ResourceSet)
GetType()

Hämtar den aktuella instansen Type .

(Ärvd från Object)
MemberwiseClone()

Skapar en ytlig kopia av den aktuella Object.

(Ärvd från Object)
ReadResources()

Läser alla resurser och lagrar dem i en Hashtable som anges i egenskapen Table .

(Ärvd från ResourceSet)
ToString()

Returnerar en sträng som representerar det aktuella objektet.

(Ärvd från Object)

Explicita gränssnittsimplementeringar

Name Description
IEnumerable.GetEnumerator()

Returnerar ett IEnumerator objekt för att undvika ett konkurrenstillstånd med Dispose. Den här medlemmen är inte avsedd att användas direkt från koden.

(Ärvd från ResourceSet)

Tilläggsmetoder

Name Description
AsParallel(IEnumerable)

Möjliggör parallellisering av en fråga.

AsQueryable(IEnumerable)

Konverterar en IEnumerable till en IQueryable.

Cast<TResult>(IEnumerable)

Omvandlar elementen i en IEnumerable till den angivna typen.

OfType<TResult>(IEnumerable)

Filtrerar elementen i en IEnumerable baserat på en angiven typ.

Gäller för

Se även