ResXResourceSet Klas

Definitie

Vertegenwoordigt alle resources in een XML-resourcebestand (.resx).

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

Voorbeelden

In het volgende voorbeeld wordt een ResXResourceSet object geïnstitueerd en wordt uitgelegd hoe u de resources opsommen en afzonderlijke resources op naam ophaalt. Voor elke resource die wordt opgesomd, wordt in het voorbeeld de IDictionaryEnumerator.Key eigenschap gebruikt in een aanroep naar de GetString of GetObject methode, afhankelijk van of de waarde van de resource een tekenreeks of een object is.

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

In het voorbeeld wordt een CreateResXFile methode aangeroepen om het benodigde XML-resourcebestand te maken. Hiervoor is een bitmapbestand met de naam Logo.bmp vereist in de map waarin het voorbeeld wordt uitgevoerd.

Opmerkingen

Important

Het aanroepen van methoden uit deze klasse met niet-vertrouwde gegevens is een beveiligingsrisico. Roep de methoden van deze klasse alleen aan met vertrouwde gegevens. Zie Alle invoergegevens validerenvoor meer informatie.

De ResXResourceSet klasse inventariseert een IResourceReader, laadt elke naam en waarde en slaat deze op in een hash-tabel. Vervolgens kunt u de resources in het ResXResourceSet object inventariseren of afzonderlijke resources op naam ophalen.

Een ResXResourceSet object biedt een handige manier om alle resources in een RESX-bestand in het geheugen te lezen. U kunt de GetObject methode gebruiken om een bepaalde resource op te halen wanneer het RESX-bestand is gelezen in een ResXResourceSet exemplaar.

Notities voor overnemers

Afgeleide klassen van ResXResourceSet die hun eigen resourcelezer en schrijver gebruiken, moeten de GetDefaultReader() en GetDefaultWriter() methoden overschrijven om de juiste functionaliteit te bieden voor het interpreteren van het ResXResourceSet exemplaar.

Constructors

Name Description
ResXResourceSet(Stream)

Initialiseert een nieuw exemplaar van de ResXResourceSet klasse met behulp van het systeem dat standaard ResXResourceReader resources uit de opgegeven stream leest.

ResXResourceSet(String)

Initialiseert een nieuw exemplaar van de ResXResourceSet klasse met behulp van de systeemstandaard ResXResourceReader waarmee resources uit het opgegeven bestand worden geopend en gelezen.

Velden

Name Description
Reader

Geeft de IResourceReader gebruikte aan om de resources te lezen.

(Overgenomen van ResourceSet)
Table

De Hashtable resources waarin de resources worden opgeslagen.

(Overgenomen van ResourceSet)

Methoden

Name Description
Close()

Hiermee worden alle resources gesloten en vrijgegeven die hiervoor ResourceSetworden gebruikt.

(Overgenomen van ResourceSet)
Dispose()

Verwijdert de resources (behalve geheugen) die worden gebruikt door het huidige exemplaar van ResourceSet.

(Overgenomen van ResourceSet)
Dispose(Boolean)

Publiceert resources (behalve geheugen) die zijn gekoppeld aan het huidige exemplaar, waarbij interne beheerde objecten worden gesloten als dit wordt aangevraagd.

(Overgenomen van ResourceSet)
Equals(Object)

Bepaalt of het opgegeven object gelijk is aan het huidige object.

(Overgenomen van Object)
GetDefaultReader()

Retourneert de voorkeursklasse voor resourcelezers voor dit type ResXResourceSet.

GetDefaultWriter()

Retourneert de voorkeursbronschrijverklasse voor dit type ResXResourceSet.

GetEnumerator()

Retourneert een IDictionaryEnumerator die door de ResourceSet.

(Overgenomen van ResourceSet)
GetHashCode()

Fungeert als de standaardhashfunctie.

(Overgenomen van Object)
GetObject(String, Boolean)

Zoekt naar een resourceobject met de opgegeven naam op een niet-hoofdlettergevoelige manier, indien aangevraagd.

(Overgenomen van ResourceSet)
GetObject(String)

Zoekt naar een resourceobject met de opgegeven naam.

(Overgenomen van ResourceSet)
GetString(String, Boolean)

Zoekt naar een String resource met de opgegeven naam op een niet-hoofdlettergevoelige manier, indien aangevraagd.

(Overgenomen van ResourceSet)
GetString(String)

Zoekt naar een String resource met de opgegeven naam.

(Overgenomen van ResourceSet)
GetType()

Hiermee haalt u de Type huidige instantie op.

(Overgenomen van Object)
MemberwiseClone()

Hiermee maakt u een ondiepe kopie van de huidige Object.

(Overgenomen van Object)
ReadResources()

Alle resources worden gelezen en opgeslagen in een Hashtable aangegeven in de Table eigenschap.

(Overgenomen van ResourceSet)
ToString()

Retourneert een tekenreeks die het huidige object vertegenwoordigt.

(Overgenomen van Object)

Expliciete interface-implementaties

Name Description
IEnumerable.GetEnumerator()

Retourneert een IEnumerator object om een racevoorwaarde met Dispose. Dit lid is niet bedoeld om rechtstreeks vanuit uw code te worden gebruikt.

(Overgenomen van ResourceSet)

Extensiemethoden

Name Description
AsParallel(IEnumerable)

Hiermee schakelt u parallelle uitvoering van een query in.

AsQueryable(IEnumerable)

Converteert een IEnumerable naar een IQueryable.

Cast<TResult>(IEnumerable)

Cast de elementen van een IEnumerable naar het opgegeven type.

OfType<TResult>(IEnumerable)

Hiermee filtert u de elementen van een IEnumerable op basis van een opgegeven type.

Van toepassing op

Zie ook