StronglyTypedResourceBuilder 클래스
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
강력한 형식의 리소스를 지원합니다. 이 클래스는 상속될 수 없습니다.
public ref class StronglyTypedResourceBuilder abstract sealed
public static class StronglyTypedResourceBuilder
type StronglyTypedResourceBuilder = class
Public Class StronglyTypedResourceBuilder
- 상속
-
StronglyTypedResourceBuilder
예제
다음 예제에서는 라는 클래스를 생성 DemoResources
(예제의 소스 코드)에 따라 C# 또는 Visual Basic에서 작성 되었습니다. 이 클래스에는 DemoApp
네임 스페이스 있고 애플리케이션의 이름과 로고 비트맵을 반환 하는 속성입니다. 예제에서는 호출을 CreateResourceFile
필요한.resw 파일을 만드는 방법을 Logo.bmp 라는 비트맵 파일의 예에서는 현재 디렉터리에서 찾을 수 있음이 하며 합니다. 코드 예제에서는 demo.resx 라는 다음 리소스 파일을 사용 합니다.
using Microsoft.CSharp;
using System;
using System.CodeDom;
using System.CodeDom.Compiler;
using System.Drawing;
using System.IO;
using System.Resources;
using System.Resources.Tools;
public class Example
{
public static void Main()
{
CreateResXFile();
StreamWriter sw = new StreamWriter(@".\DemoResources.cs");
string[] errors = null;
CSharpCodeProvider provider = new CSharpCodeProvider();
CodeCompileUnit code = StronglyTypedResourceBuilder.Create("Demo.resx", "DemoResources",
"DemoApp", provider,
false, out errors);
if (errors.Length > 0)
foreach (var error in errors)
Console.WriteLine(error);
provider.GenerateCodeFromCompileUnit(code, sw, new CodeGeneratorOptions());
sw.Close();
}
private static void CreateResXFile()
{
Bitmap logo = new Bitmap(@".\Logo.bmp");
ResXResourceWriter rw = new ResXResourceWriter(@".\Demo.resx");
rw.AddResource("Logo", logo);
rw.AddResource("AppTitle", "Demo Application");
rw.Generate();
rw.Close();
}
}
Imports System.CodeDom
Imports System.CodeDom.Compiler
Imports System.Drawing
Imports System.IO
Imports System.Resources
Imports System.Resources.Tools
Module Example
Public Sub Main()
CreateResXFile()
Dim sw As New StreamWriter(".\DemoResources.vb")
Dim errors() As String = Nothing
Dim provider As New VBCodeProvider()
Dim code As CodeCompileUnit = StronglyTypedResourceBuilder.Create("Demo.resx", "DemoResources",
"DemoApp", provider,
false, errors)
If errors.Length > 0 Then
For Each [error] In errors
Console.WriteLine([error])
Next
End If
provider.GenerateCodeFromCompileUnit(code, sw, New CodeGeneratorOptions())
sw.Close()
End Sub
Private Sub CreateResXFile()
Dim logo As New Bitmap(".\Logo.bmp")
Dim rw As New ResXResourceWriter(".\Demo.resx")
rw.AddResource("Logo", logo)
rw.AddResource("AppTitle", "Demo Application")
rw.Generate()
rw.Close()
End Sub
End Module
다음 애플리케이션 코드 클래스를 다음과 같이 사용할 수 있습니다.
this.Text = DemoApp.DemoResources.AppTitle;
System.Drawing.Bitmap bmp = DemoApp.DemoResources.Logo;
Me.Text = DemoApp.DemoResources.AppTitle
Dim bmp As System.Drawing.Bitmap = DemoApp.DemoResources.Logo
설명
일반적으로 리소스는 콘텐츠 애플리케이션 내에서 코드를 구분합니다. 만들기 및 이러한 리소스를 소비 쉽게 지역화할 수 있는 애플리케이션을 개발 합니다. .NET framework에서 일반적으로에서 리소스가 소비 되므로 사용 하 여 ResourceManager 런타임 시 문화권별 리소스에 대 한 액세스를 제공 하는 메서드를 포함 하는 클래스입니다. 만들기 및 리소스를 소비 하는 방법에 대 한 자세한 내용은 참조 하세요. 데스크톱 앱의 리소스합니다.
강력한 형식의 리소스 지원이 읽기 전용 정적 집합을 포함 하는 클래스를 만들어 리소스에 대 한 액세스를 캡슐화 하는 컴파일 시간 기능 (get
) 속성입니다. 호출 하는 대신 리소스를 소비 하는 대체 방법을 제공 합니다 ResourceManager.GetString 고 ResourceManager.GetObject 메서드.
강력한 형식의 리소스 지원 위한 기본 기능을 제공 합니다 StronglyTypedResourceBuilder 클래스 (뿐만 /str
명령줄 옵션을 Resgen.exe (리소스 파일 생성기)). 출력을 Create 메서드는 입력된 매개 변수에서 참조 되는 리소스와 일치 하는 강력한 형식의 속성을 포함 하는 클래스입니다. 이 클래스는 처리 된 파일에서 사용할 수 있는 리소스에 대 한 읽기 전용 액세스를 제공 합니다.
메서드
Create(IDictionary, String, String, CodeDomProvider, Boolean, String[]) |
지정된 컬렉션에 참조된 리소스와 일치하는 강력한 형식의 속성이 포함된 클래스 파일을 생성합니다. |
Create(IDictionary, String, String, String, CodeDomProvider, Boolean, String[]) |
지정된 컬렉션에 참조된 리소스와 일치하는 강력한 형식의 속성이 포함된 클래스 파일을 생성합니다. |
Create(String, String, String, CodeDomProvider, Boolean, String[]) |
지정된 .resx 파일의 리소스와 일치하는 강력한 형식의 속성이 들어 있는 클래스 파일을 생성합니다. |
Create(String, String, String, String, CodeDomProvider, Boolean, String[]) |
지정된 .resx 파일의 리소스와 일치하는 강력한 형식의 속성이 들어 있는 클래스 파일을 생성합니다. |
VerifyResourceName(String, CodeDomProvider) |
지정된 입력 문자열 및 코드 공급자를 기반으로 유효한 리소스 문자열을 생성합니다. |
적용 대상
.NET