Share via


ResXResourceSet Sınıf

Tanım

XML kaynağı (.resx) dosyasındaki tüm kaynakları temsil eder.

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

Örnekler

Aşağıdaki örnek bir ResXResourceSet nesnenin örneğini oluşturur ve kaynaklarını listelemeyi ve tek tek kaynakları ada göre almayı gösterir. Numaralandırdığı her kaynak için örnek, kaynağın değerinin IDictionaryEnumerator.Key bir dize mi yoksa nesne mi olduğuna bağlı olarak or GetObject yöntemine yapılan çağrıda GetString özelliğini kullanır.

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

Örnek, gerekli XML kaynak dosyasını oluşturmak için bir CreateResXFile yöntem çağırır. Örneğin çalıştığı dizinde Logo.bmp adlı bir bit eşlem dosyası gerektirir.

Açıklamalar

Önemli

Güvenilmeyen verilerle bu sınıftan yöntemleri çağırmak bir güvenlik riskidir. Bu sınıftaki yöntemleri yalnızca güvenilir verilerle çağırın. Daha fazla bilgi için bkz. Tüm Girişleri Doğrulama.

ResXResourceSet sınıfı bir IResourceReaderüzerinden numaralandırır, her adı ve değeri yükler ve bunları bir karma tabloda depolar. Daha sonra nesnedeki ResXResourceSet kaynakları numaralandırabilir veya tek tek kaynakları ada göre alabilirsiniz.

Nesne ResXResourceSet , bir .resx dosyasındaki tüm kaynakları belleğe okumak için kullanışlı bir yol sağlar. .resx dosyası bir örneğe okunduğunda ResXResourceSet belirli bir kaynağı almak için yöntemini kullanabilirsinizGetObject.

Devralanlara Notlar

Kendi kaynak okuyucularını ve yazıcılarını kullanan türetilmiş sınıflarıResXResourceSet, örneği yorumlamak ResXResourceSet için uygun işlevselliği sağlamak üzere ve GetDefaultWriter() yöntemlerini geçersiz kılmalıdırGetDefaultReader().

Oluşturucular

ResXResourceSet(Stream)

Belirtilen akıştan kaynakları okumak için sistem varsayılanını ResXResourceReader kullanarak sınıfının yeni bir örneğini ResXResourceSet başlatır.

ResXResourceSet(String)

Belirtilen dosyadan ResXResourceSet kaynakları açan ve okuyan sistem varsayılanını ResXResourceReader kullanarak sınıfının yeni bir örneğini başlatır.

Alanlar

Reader

IResourceReader Kaynakları okumak için kullanılan öğesini gösterir.

(Devralındığı yer: ResourceSet)
Table

Hashtable Kaynakların depolandığı yer.

(Devralındığı yer: ResourceSet)

Yöntemler

Close()

Bu ResourceSettarafından kullanılan tüm kaynakları kapatır ve serbest bırakır.

(Devralındığı yer: ResourceSet)
Dispose()

geçerli örneği tarafından kullanılan kaynakları (bellek dışında) atılır ResourceSet.

(Devralındığı yer: ResourceSet)
Dispose(Boolean)

geçerli örnekle ilişkili kaynakları (bellek dışında) serbest bırakır ve istenirse iç yönetilen nesneleri kapatır.

(Devralındığı yer: ResourceSet)
Equals(Object)

Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler.

(Devralındığı yer: Object)
GetDefaultReader()

Bu tür için tercih edilen kaynak okuyucu sınıfını ResXResourceSetdöndürür.

GetDefaultWriter()

Bu tür için tercih edilen kaynak yazıcı sınıfını ResXResourceSetdöndürür.

GetEnumerator()

aracılığıyla ResourceSetyinelenebilir bir IDictionaryEnumerator döndürür.

(Devralındığı yer: ResourceSet)
GetHashCode()

Varsayılan karma işlevi işlevi görür.

(Devralındığı yer: Object)
GetObject(String)

Belirtilen ada sahip bir kaynak nesnesi arar.

(Devralındığı yer: ResourceSet)
GetObject(String, Boolean)

İstenirse, belirtilen ada sahip bir kaynak nesnesini büyük/küçük harfe duyarsız bir şekilde arar.

(Devralındığı yer: ResourceSet)
GetString(String)

Belirtilen ada sahip bir String kaynağı arar.

(Devralındığı yer: ResourceSet)
GetString(String, Boolean)

İstenirse, belirtilen ada sahip bir String kaynağı büyük/küçük harfe duyarsız bir şekilde arar.

(Devralındığı yer: ResourceSet)
GetType()

Type Geçerli örneğini alır.

(Devralındığı yer: Object)
MemberwiseClone()

Geçerli Objectöğesinin sığ bir kopyasını oluşturur.

(Devralındığı yer: Object)
ReadResources()

Tüm kaynakları okur ve özelliğinde belirtilen bir Hashtable içinde Table depolar.

(Devralındığı yer: ResourceSet)
ToString()

Geçerli nesneyi temsil eden dizeyi döndürür.

(Devralındığı yer: Object)

Belirtik Arabirim Kullanımları

IEnumerable.GetEnumerator()

ile Disposeyarış durumundan kaçınmak için bir IEnumerator nesnesi döndürür. Bu üyenin doğrudan kodunuzdan kullanılması amaçlanmamıştır.

(Devralındığı yer: ResourceSet)

Uzantı Metotları

Cast<TResult>(IEnumerable)

öğesinin IEnumerable öğelerini belirtilen türe atar.

OfType<TResult>(IEnumerable)

Öğesinin IEnumerable öğelerini belirtilen türe göre filtreler.

AsParallel(IEnumerable)

Sorgunun paralelleştirilmesini etkinleştirir.

AsQueryable(IEnumerable)

bir IEnumerable öğesini öğesine IQueryabledönüştürür.

Şunlara uygulanır

Ayrıca bkz.