ResXResourceSet Classe
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Rappresenta tutte le risorse in un file di risorse XML (con estensione resx).
public ref class ResXResourceSet : System::Resources::ResourceSet
public class ResXResourceSet : System.Resources.ResourceSet
type ResXResourceSet = class
inherit ResourceSet
Public Class ResXResourceSet
Inherits ResourceSet
- Ereditarietà
Esempio
Nell'esempio seguente viene creata un'istanza di un ResXResourceSet oggetto e viene illustrato come enumerare le risorse e recuperare le singole risorse in base al nome. Per ogni risorsa enumerata, nell'esempio viene utilizzata la IDictionaryEnumerator.Key proprietà in una chiamata al GetString metodo o GetObject , a seconda che il valore della risorsa sia una stringa o un oggetto .
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
Nell'esempio viene chiamato un CreateResXFile metodo per creare il file di risorse XML necessario. Richiede un file bitmap denominato Logo.bmp nella directory in cui è in esecuzione l'esempio.
Commenti
Importante
La chiamata di metodi da questa classe con dati non attendibili è un rischio per la sicurezza. Chiamare i metodi da questa classe solo con dati attendibili. Per altre informazioni, vedere Convalidare tutti gli input.
La ResXResourceSet classe enumera su un IResourceReaderoggetto , carica ogni nome e valore e li archivia in una tabella hash. È quindi possibile enumerare le risorse nell'oggetto o recuperare singole risorse in base al ResXResourceSet nome.
Un ResXResourceSet oggetto offre un modo pratico per leggere tutte le risorse in un file con estensione resx in memoria. È possibile usare il GetObject metodo per recuperare una determinata risorsa quando il file resx è stato letto in un'istanza ResXResourceSet di .
Note per gli eredi
Le classi derivate di che usano il proprio lettore di ResXResourceSet risorse e writer devono eseguire l'override dei GetDefaultReader() metodi e GetDefaultWriter() per fornire la funzionalità appropriata per interpretare l'istanza ResXResourceSet .
Costruttori
| Nome | Descrizione |
|---|---|
| ResXResourceSet(Stream) |
Inizializza una nuova istanza della ResXResourceSet classe utilizzando l'impostazione predefinita ResXResourceReader del sistema per leggere le risorse dal flusso specificato. |
| ResXResourceSet(String) |
Inizializza una nuova istanza della classe utilizzando l'impostazione predefinita ResXResourceReader di ResXResourceSet sistema che apre e legge le risorse dal file specificato. |
Campi
| Nome | Descrizione |
|---|---|
| Reader |
Indica l'oggetto IResourceReader utilizzato per leggere le risorse. (Ereditato da ResourceSet) |
| Table |
Oggetto Hashtable in cui vengono archiviate le risorse. (Ereditato da ResourceSet) |
Metodi
| Nome | Descrizione |
|---|---|
| Close() |
Chiude e rilascia tutte le risorse usate da questo ResourceSetoggetto . (Ereditato da ResourceSet) |
| Dispose() |
Elimina le risorse (diverse dalla memoria) usate dall'istanza corrente di ResourceSet. (Ereditato da ResourceSet) |
| Dispose(Boolean) |
Rilascia le risorse (diverse dalla memoria) associate all'istanza corrente, chiudendo gli oggetti gestiti interni, se richiesto. (Ereditato da ResourceSet) |
| Equals(Object) |
Determina se l'oggetto specificato è uguale all'oggetto corrente. (Ereditato da Object) |
| GetDefaultReader() |
Restituisce la classe di lettura risorse preferita per questo tipo di ResXResourceSet. |
| GetDefaultWriter() |
Restituisce la classe di writer di risorse preferita per questo tipo di ResXResourceSet. |
| GetEnumerator() |
Restituisce un oggetto IDictionaryEnumerator in grado di scorrere l'oggetto ResourceSet. (Ereditato da ResourceSet) |
| GetHashCode() |
Funge da funzione hash predefinita. (Ereditato da Object) |
| GetObject(String, Boolean) |
Cerca un oggetto risorsa con il nome specificato in modo senza distinzione tra maiuscole e minuscole, se richiesto. (Ereditato da ResourceSet) |
| GetObject(String) |
Cerca un oggetto risorsa con il nome specificato. (Ereditato da ResourceSet) |
| GetString(String, Boolean) |
Cerca una String risorsa con il nome specificato in modo senza distinzione tra maiuscole e minuscole, se richiesto. (Ereditato da ResourceSet) |
| GetString(String) |
Cerca una String risorsa con il nome specificato. (Ereditato da ResourceSet) |
| GetType() |
Ottiene il Type dell'istanza corrente. (Ereditato da Object) |
| MemberwiseClone() |
Crea una copia superficiale del Objectcorrente. (Ereditato da Object) |
| ReadResources() |
Legge tutte le risorse e le archivia in un Hashtable oggetto indicato nella Table proprietà . (Ereditato da ResourceSet) |
| ToString() |
Restituisce una stringa che rappresenta l'oggetto corrente. (Ereditato da Object) |
Implementazioni dell'interfaccia esplicita
| Nome | Descrizione |
|---|---|
| IEnumerable.GetEnumerator() |
Restituisce un IEnumerator oggetto per evitare una race condition con |
Metodi di estensione
| Nome | Descrizione |
|---|---|
| AsParallel(IEnumerable) |
Abilita la parallelizzazione di una query. |
| AsQueryable(IEnumerable) |
Converte un IEnumerable in un IQueryable. |
| Cast<TResult>(IEnumerable) |
Esegue il cast degli elementi di un IEnumerable al tipo specificato. |
| OfType<TResult>(IEnumerable) |
Filtra gli elementi di un IEnumerable in base a un tipo specificato. |