Cette page vous a-t-elle été utile ?
Votre avis sur ce contenu est important. N'hésitez pas à nous faire part de vos commentaires.
Vous avez d'autres commentaires ?
1500 caractères restants
StronglyTypedResourceBuilder, classe
Cet article a fait l'objet d'une traduction automatique. Déplacez votre pointeur sur les phrases de l'article pour voir la version originale de ce texte. Informations supplémentaires.
Traduction
Source

StronglyTypedResourceBuilder, classe

Fournit la prise en charge pour les ressources fortement typées. Cette classe ne peut pas être héritée.

System.Object
  System.Resources.Tools.StronglyTypedResourceBuilder

Espace de noms :  System.Resources.Tools
Assembly :  System.Design (dans System.Design.dll)

public static class StronglyTypedResourceBuilder

Le type StronglyTypedResourceBuilder expose les membres suivants.

  NomDescription
Méthode publiqueMembre statiqueCreate(IDictionary, String, String, CodeDomProvider, Boolean, String[])Génère un fichier de classe qui contient les propriétés fortement typées correspondant aux ressources référencées dans la collection spécifiée.
Méthode publiqueMembre statiqueCreate(String, String, String, CodeDomProvider, Boolean, String[])Génère un fichier de classe qui contient les propriétés fortement typées correspondant aux ressources contenues dans le fichier .resx spécifié.
Méthode publiqueMembre statiqueCreate(IDictionary, String, String, String, CodeDomProvider, Boolean, String[])Génère un fichier de classe qui contient les propriétés fortement typées correspondant aux ressources référencées dans la collection spécifiée.
Méthode publiqueMembre statiqueCreate(String, String, String, String, CodeDomProvider, Boolean, String[])Génère un fichier de classe qui contient les propriétés fortement typées correspondant aux ressources contenues dans le fichier .resx spécifié.
Méthode publiqueMembre statiqueVerifyResourceNameGénère une chaîne de ressource valide selon la chaîne d'entrée et le fournisseur de code spécifiés.
Début

En général, les ressources séparent le code du contenu dans une application. La création et la consommation de ces ressources simplifient le développement d'applications localisables. Dans le.NET Framework, les ressources sont généralement utilisé en utilisant la classe d'ResourceManager, qui contient des méthodes qui permettent d'accéder aux ressources spécifiques à la culture au moment de l'exécution. Pour plus d'informations sur la création et la consommation de ressources, consultez Ressources dans des applications de bureau.

La prise en charge fortement typée de ressources est une fonctionnalité de compilation qui encapsule l'accès aux ressources en créant des classes qui contiennent un ensemble de ligne statique, propriétés en lecture seule (get). Cela fournit une alternative à consommer des ressources au lieu d'appeler les méthodes d'ResourceManager.GetString et d'ResourceManager.GetObject.

Les fonctionnalités de base pour la prise en charge fortement typée de ressources est fournie par la classe d'StronglyTypedResourceBuilder (ainsi que l'option de ligne de commande de /str dans Resgen.exe (Resource File Generator)). La sortie de la méthode d'Create est une classe qui contient les propriétés fortement typées qui correspondent aux ressources référencées dans le paramètre d'entrée. Cette classe fournit l'accès en lecture seule aux ressources disponibles dans le fichier traité.

L'exemple suivant génère une classe nommée DemoResources qui sont écrites en c ou Visual Basic (selon le code source de l'exemple). Cette classe dans l'espace de noms d'DemoApp et possède des propriétés qui retournent bitmap d'un logo et le nom d'une application. L'exemple de code appelle une méthode d'CreateResourceFile pour créer le fichier nécessaire de .resw et la requiert qu'un fichier bitmap nommé Logo.bmp soit rencontré dans le répertoire actif de l'exemple. L'exemple de code utilise le fichier de ressources suivant, demo.resx nommé :


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();
   }
}


Votre code d'application peut utiliser la classe comme suit :


this.Text = DemoApp.DemoResources.AppTitle;
System.Drawing.Bitmap bmp = DemoApp.DemoResources.Logo;


.NET Framework

Pris en charge dans : 4.5.2, 4.5.1, 4.5, 4, 3.5, 3.0, 2.0

Windows Phone 8.1, Windows Phone 8, Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (rôle principal du serveur non pris en charge), Windows Server 2008 R2 (rôle principal du serveur pris en charge avec SP1 ou version ultérieure ; Itanium non pris en charge)

Le .NET Framework ne prend pas en charge toutes les versions de chaque plateforme. Pour obtenir la liste des versions prises en charge, consultez Configuration requise du .NET Framework.

Tous les membres static (Shared en Visual Basic) publics de ce type sont thread-safe. Il n'est pas garanti que les membres d'instance soient thread-safe.

Ajouts de la communauté

AJOUTER
Afficher:
© 2015 Microsoft