ResourceWriter.AddResource Metódus

Definíció

Hozzáad egy erőforrást az írandó erőforrások listájához.

Túlterhelések

Name Description
AddResource(String, Byte[])

Egy bájttömbként megadott elnevezett erőforrást ad hozzá az írandó erőforrások listájához.

AddResource(String, Stream)

Streamként megadott elnevezett erőforrást ad hozzá az írandó erőforrások listájához.

AddResource(String, Object)

Objektumként megadott elnevezett erőforrást ad hozzá az írandó erőforrások listájához.

AddResource(String, String)

Sztringerőforrást ad hozzá az írandó erőforrások listájához.

AddResource(String, Stream, Boolean)

Hozzáad egy streamként megadott elnevezett erőforrást az írandó erőforrások listájához, és megadja, hogy a metódus meghívása után be kell-e zárni a Generate() streamet.

AddResource(String, Byte[])

Forrás:
ResourceWriter.cs
Forrás:
ResourceWriter.cs
Forrás:
ResourceWriter.cs
Forrás:
ResourceWriter.cs
Forrás:
ResourceWriter.cs

Egy bájttömbként megadott elnevezett erőforrást ad hozzá az írandó erőforrások listájához.

public:
 virtual void AddResource(System::String ^ name, cli::array <System::Byte> ^ value);
public void AddResource(string name, byte[]? value);
public void AddResource(string name, byte[] value);
abstract member AddResource : string * byte[] -> unit
override this.AddResource : string * byte[] -> unit
Public Sub AddResource (name As String, value As Byte())

Paraméterek

name
String

Az erőforrás neve.

value
Byte[]

Az erőforrás értéke 8 bites aláíratlan egész számtömbként.

Megvalósítás

Kivételek

name(vagy egy név, amely csak a nagybetűsítéstől függ) már hozzá lett adva ehhez.ResourceWriter

A name paraméter a következő null: .

Ez ResourceWriter bezárult, és a kivonattáblája nem érhető el.

Példák

Az alábbi példa a AddResource(String, Byte[]) metódus használatával egy bájttömbként beolvasott grafikus képet ad hozzá egy ResourceWriter objektumhoz.

using System;
using System.IO;
using System.Resources;

public class Example
{
   public static void Main()
   {
      // Get the image as an array of bytes.
      FileStream byteStream = new FileStream("AppIcon.jpg", FileMode.Open);
      Byte[] bytes = new Byte[(int) byteStream.Length];
      byteStream.Read(bytes, 0, (int) byteStream.Length);
      
      // Create the resource file.
      using (ResourceWriter rw = new ResourceWriter(@".\UIImages.resources")) {
         rw.AddResource("AppIcon", byteStream);
         // Add any other resources.
      }
   }
}
Imports System.IO
Imports System.Resources

Module Example
   Public Sub Main()                      
      ' Get the image as an array of bytes.
      Dim byteStream As New FileStream("AppIcon.jpg", Filemode.Open)
      Dim bytes(CInt(byteStream.Length - 1)) As Byte
      byteStream.Read(bytes, 0, CInt(byteStream.Length))
      
      ' Create the resource file.
      Using rw As New ResourceWriter(".\UIImages.resources")
         rw.AddResource("AppIcon", byteStream)
         ' Add any other resources.
      End Using
   End Sub
End Module

Megjegyzések

Az erőforrás írása csak akkor történik meg, ha Generate meghívják.

A metódus által AddResource(String, Byte[]) írt erőforrásokat lekérheti a ResourceManager.GetStream metódus meghívásával.

Lásd még

A következőre érvényes:

AddResource(String, Stream)

Forrás:
ResourceWriter.core.cs
Forrás:
ResourceWriter.core.cs
Forrás:
ResourceWriter.core.cs
Forrás:
ResourceWriter.core.cs
Forrás:
ResourceWriter.core.cs

Streamként megadott elnevezett erőforrást ad hozzá az írandó erőforrások listájához.

public:
 void AddResource(System::String ^ name, System::IO::Stream ^ value);
public void AddResource(string name, System.IO.Stream? value);
public void AddResource(string name, System.IO.Stream value);
member this.AddResource : string * System.IO.Stream -> unit
Public Sub AddResource (name As String, value As Stream)

Paraméterek

name
String

A hozzáadni kívánt erőforrás neve.

value
Stream

A hozzáadni kívánt erőforrás értéke. Az erőforrásnak támogatnia kell a tulajdonságot Length .

Kivételek

name(vagy egy név, amely csak a nagybetűsítéstől függ) már hozzá lett adva ehhez.ResourceWriter

-vagy-

A stream nem támogatja a tulajdonságot Length .

name vagy value az null.

Példák

Az alábbi példa egy objektumba AddResource(String, Stream) mentett grafikus kép hozzáadására használja a MemoryStream metódustResourceWriter.

using System;
using System.Drawing;
using System.Drawing.Imaging;
using System.IO;
using System.Resources;

public class Example
{
   public static void Main()
   {
      // Bitmap as stream
      MemoryStream bitmapStream = new MemoryStream();
      Bitmap bmp = new Bitmap(@".\\AppImage.jpg");
      bmp.Save(bitmapStream, ImageFormat.Jpeg);
          
      using (ResourceWriter rw = new ResourceWriter(@".\UIImages.resources"))
      {
         rw.AddResource("Bitmap", bitmapStream);
         // Add other resources.
      }
   }
}
Imports System.Drawing
Imports System.IO
Imports System.Resources

Module Example
   Public Sub Main()
      ' Bitmap as stream
      Dim bitmapStream As New MemoryStream()
      Dim bmp As New Bitmap(".\\AppImage.jpg")
      bmp.Save(bitmapStream, Imaging.ImageFormat.Jpeg)
          
      Using rw As New ResourceWriter(".\UIImages.resources")
         rw.AddResource("Bitmap", bitmapStream)
         ' Add other resources.
      End Using
   End Sub
End Module

Megjegyzések

Megadhatja azokat a streameket, amelyek támogatják a tulajdonságotStream.Length.value

A metódus által AddResource(String, Stream) írt erőforrásokat lekérheti a ResourceManager.GetStream metódus meghívásával.

Lásd még

A következőre érvényes:

AddResource(String, Object)

Forrás:
ResourceWriter.cs
Forrás:
ResourceWriter.cs
Forrás:
ResourceWriter.cs
Forrás:
ResourceWriter.cs
Forrás:
ResourceWriter.cs

Objektumként megadott elnevezett erőforrást ad hozzá az írandó erőforrások listájához.

public:
 virtual void AddResource(System::String ^ name, System::Object ^ value);
public void AddResource(string name, object? value);
public void AddResource(string name, object value);
abstract member AddResource : string * obj -> unit
override this.AddResource : string * obj -> unit
Public Sub AddResource (name As String, value As Object)

Paraméterek

name
String

Az erőforrás neve.

value
Object

Az erőforrás értéke.

Megvalósítás

Kivételek

name(vagy egy név, amely csak a nagybetűsítéstől függ) már hozzá lett adva ehhez.ResourceWriter

A name paraméter a következő null: .

Ez ResourceWriter bezárult, és a kivonattáblája nem érhető el.

Példák

Az alábbi példa az objektumadatok bináris erőforrásfájlhoz való hozzáadására használja a AddResource(String, Object) metódust.

using System;
using System.Resources;

public class Example
{
   public static void Main()
   {
      DonorColumns columns = new DonorColumns("Emplyee #", "Name", 
                                              "Total Amount", "Last Donation Date",
                                              "Last Donation Amount");
      ResourceWriter resFile = new ResourceWriter(@".\UIResources.resources");
      resFile.AddResource("Title", "Corporate Gold Star Donors");
      resFile.AddResource("NColumns", 5);
      resFile.AddResource("AppDate", new DateTime(2011, 5, 28));
      resFile.AddResource("AppVersion", new Version(1, 0, 217));
      resFile.AddResource("HRVersion", true);
      resFile.Generate();
      resFile.Close();               
   }
}

// Class to hold potentially localized column names.
[Serializable] public class DonorColumns
{
   readonly string ID;
   readonly string Name;
   readonly string Total;
   readonly string Last;
   readonly string Amt;

   public DonorColumns(string id, string name, string total, 
                  string last, string amt)
   {                  
      this.ID = id;
      this.Name = name;
      this.Total = total;
      this.Last = last;
      this.Amt = amt;                        
   }   
}

DonorColumns olyan egyéni osztály, amelynek mezői a felhasználói felületen megjelenítendő oszlopok nevét tartalmazzák. Vegye figyelembe, hogy az osztály az attribútummal SerializableAttribute van megjelölve. Az osztályt általában külön szerelvényben definiálják, és a fordításkor a fordítónak is meg kell adni az arra mutató hivatkozást.

Megjegyzések

value szerializálhatónak kell lennie.

Az erőforrás csak a metódus meghívása Generate után lesz megírva.

A metódus által AddResource(String, Object) írt erőforrásokat lekérheti a ResourceManager.GetObject metódus meghívásával.

Lásd még

A következőre érvényes:

AddResource(String, String)

Forrás:
ResourceWriter.cs
Forrás:
ResourceWriter.cs
Forrás:
ResourceWriter.cs
Forrás:
ResourceWriter.cs
Forrás:
ResourceWriter.cs

Sztringerőforrást ad hozzá az írandó erőforrások listájához.

public:
 virtual void AddResource(System::String ^ name, System::String ^ value);
public:
 void AddResource(System::String ^ name, System::String ^ value);
public void AddResource(string name, string? value);
public void AddResource(string name, string value);
abstract member AddResource : string * string -> unit
override this.AddResource : string * string -> unit
member this.AddResource : string * string -> unit
Public Sub AddResource (name As String, value As String)

Paraméterek

name
String

Az erőforrás neve.

value
String

Az erőforrás értéke.

Megvalósítás

Kivételek

name (vagy egy név, amely csak a nagybetűsítéstől függően változik) már hozzá lett adva ehhez a ResourceWriterhez.

A name paraméter a következő null: .

Ez ResourceWriter bezárult, és a kivonattáblája nem érhető el.

Példák

Az alábbi példa a AddResource metódussal sztringerőforrásokat ad hozzá egy ResourceWriter objektumhoz.

using System;
using System.Resources;
using System.IO;

public class WriteResources 
{
    public static void Main(string[] args) 
    {  
        // Create a file stream to encapsulate items.resources.
        FileStream fs = new FileStream("items.resources", 
        FileMode.OpenOrCreate,FileAccess.Write);

        // Open a resource writer to write from the stream.
        IResourceWriter writer = new ResourceWriter(fs);
    
        // Add resources to the resource writer.
        writer.AddResource("String 1", "First String");
        writer.AddResource("String 2", "Second String");
        writer.AddResource("String 3", "Third String");

        // Write the resources to the stream, and close it.
        writer.Close();
    }
}
Imports System.Resources
Imports System.IO

Public Class WriteResources
   
    Public Shared Sub Main(args() As String)
        ' Create a file stream to encapsulate items.resources.
        Dim fs As New FileStream("items.resources", _
           FileMode.OpenOrCreate, FileAccess.Write)
      
        ' Open a resource writer to write from the stream.
        Dim writer = New ResourceWriter(fs)
      
        ' Add resources to the resource writer.
        writer.AddResource("String 1", "First String")
        writer.AddResource("String 2", "Second String")
        writer.AddResource("String 3", "Third String")
      
        ' Write the resources to the stream, and close it.
        writer.Close()
    End Sub

End Class

Megjegyzések

Az erőforrás írása csak akkor történik meg, ha Generate meghívják.

A metódus által AddResource(String, String) írt erőforrásokat lekérheti a ResourceManager.GetString metódus meghívásával.

Lásd még

A következőre érvényes:

AddResource(String, Stream, Boolean)

Forrás:
ResourceWriter.cs
Forrás:
ResourceWriter.cs
Forrás:
ResourceWriter.cs
Forrás:
ResourceWriter.cs
Forrás:
ResourceWriter.cs

Hozzáad egy streamként megadott elnevezett erőforrást az írandó erőforrások listájához, és megadja, hogy a metódus meghívása után be kell-e zárni a Generate() streamet.

public:
 void AddResource(System::String ^ name, System::IO::Stream ^ value, bool closeAfterWrite);
public void AddResource(string name, System.IO.Stream? value, bool closeAfterWrite = false);
public void AddResource(string name, System.IO.Stream value, bool closeAfterWrite);
member this.AddResource : string * System.IO.Stream * bool -> unit
Public Sub AddResource (name As String, value As Stream, Optional closeAfterWrite As Boolean = false)
Public Sub AddResource (name As String, value As Stream, closeAfterWrite As Boolean)

Paraméterek

name
String

A hozzáadni kívánt erőforrás neve.

value
Stream

A hozzáadni kívánt erőforrás értéke. Az erőforrásnak támogatnia kell a tulajdonságot Length .

closeAfterWrite
Boolean

true a metódus meghívása után zárja be a Generate() streamet; falseellenkező esetben.

Kivételek

name(vagy egy név, amely csak a nagybetűsítéstől függ) már hozzá lett adva ehhez.ResourceWriter

-vagy-

A stream nem támogatja a tulajdonságot Length .

name vagy value az null.

Példák

Az alábbi példa egy objektumba AddResource(String, Stream, Boolean) mentett grafikus kép hozzáadására használja a MemoryStream metódustResourceWriter.

using System;
using System.Drawing;
using System.Drawing.Imaging;
using System.IO;
using System.Resources;

public class Example
{
   public static void Main()
   {
      // Bitmap as stream
      MemoryStream bitmapStream = new MemoryStream();
      Bitmap bmp = new Bitmap(@".\\AppImage.jpg");
      bmp.Save(bitmapStream, ImageFormat.Jpeg);
          
      ResourceWriter rw = new ResourceWriter(@".\UIImages.resources");
      rw.AddResource("Bitmap", bitmapStream, true);
      // Add other resources.
      rw.Generate();
   }
}
Imports System.Drawing
Imports System.IO
Imports System.Resources

Module Example
   Public Sub Main()
      ' Bitmap as stream
      Dim bitmapStream As New MemoryStream()
      Dim bmp As New Bitmap(".\\AppImage.jpg")
      bmp.Save(bitmapStream, Imaging.ImageFormat.Jpeg)
          
      Dim rw As New ResourceWriter(".\UIImages.resources")
      rw.AddResource("Bitmap", bitmapStream, True)
      ' Add other resources.
      rw.Generate()
   End Sub
End Module

Megjegyzések

Megadhatja azokat a streameket, amelyek támogatják a tulajdonságotStream.Length.value

A metódus által AddResource(String, Stream, Boolean) írt erőforrásokat lekérheti a ResourceManager.GetStream metódus meghívásával.

Lásd még

A következőre érvényes: