Partager via


Procédure pas à pas : chargement de ressources d'un assembly satellite

Cette procédure pas à pas indique comment charger une chaîne de ressource à partir d'un assembly satellite à l'aide du Concepteur WPF pour Visual Studio, afin de simplifier la localisation des applications WPF.

Dans cette procédure pas à pas, vous allez effectuer les tâches suivantes :

  • créer le projet ;

  • activer l'assembly satellite ;

  • créer une chaîne de ressource et y accéder.

Lorsque vous aurez terminé, vous disposerez d'une application simple qui vous permettra de récupérer une chaîne à partir d'un assembly satellite.

Notes

Les boîtes de dialogue et les commandes de menu qui s'affichent peuvent être différentes de celles qui sont décrites dans l'aide, en fonction de vos paramètres actifs ou de l'édition utilisée. Pour modifier vos paramètres, choisissez Importation et exportation de paramètres dans le menu Outils. Pour plus d'informations, consultez Utilisation des paramètres.

Composants requis

Pour exécuter cette procédure pas à pas, vous devez disposer des composants suivants :

  • Visual Studio 2010.

Création du projet

La première étape consiste à créer le projet pour l'application.

Pour créer le projet

  1. Créez un projet d'application WPF en Visual Basic ou Visual C# nommé ResourceTest. Pour plus d'informations, consultez Comment : créer un projet d'application WPF.

    MainWindow.xaml s'ouvre dans le Concepteur WPF.

  2. À partir de la boîte à outils, faites glisser un contrôle Button vers l'aire de conception.

  3. Double-cliquez sur le bouton pour créer un gestionnaire d'événements Click pour le contrôle bouton.

Activation de l'assembly satellite

Pour activer l'assembly satellite, vous devez apporter de petites modifications aux fichiers du projet et au fichier AssemblyInfo.

Pour activer l'assembly satellite

  1. Ouvrez AssemblyInfo.cs ou AssemblyInfo.vb dans l'éditeur de code. Pour l'afficher dans l'Explorateur de solutions, vous devrez peut-être cliquer sur Afficher tous les fichiers.

  2. Supprimez les marques de commentaire de la ligne suivante.

    //[assembly: NeutralResourcesLanguage("en-US", UltimateResourceFallbackLocation.Satellite)]
    
    '<Assembly: NeutralResourcesLanguage("en-US", UltimateResourceFallbackLocation.Satellite)>
    
  3. Enregistrez la solution.

  4. Dans l'Explorateur de solutions, cliquez avec le bouton droit sur le projet ResourceTest, puis cliquez sur Décharger le projet.

    Visual Studio décharge le projet ResourceTest.

  5. Dans l'Explorateur de solutions, cliquez avec le bouton droit sur le projet ResourceTest, puis cliquez sur Modifier ResourceTest.csproj ou sur Modifier ResourceTest.vbproj.

    Le fichier projet s'ouvre dans l'Éditeur XML.

  6. Insérez le code XML suivant au même niveau que les autres éléments <PropertyGroup>.

    <PropertyGroup>
        <UICulture>en-US</UICulture>
    </PropertyGroup>
    
  7. Enregistrez et fermez le fichier.

  8. Dans l'Explorateur de solutions, cliquez avec le bouton droit sur le projet ResourceTest, puis cliquez sur Recharger le projet.

  9. Dans l'Explorateur de solutions, remplacez le nom du fichier RESX par défaut Resources.resx. en Resources.en-US.resx.

  10. Dans la fenêtre Propriétés, effacez la valeur Outil personnalisé du fichier de ressources.

Création d'une chaîne de ressource dans l'assembly satellite

Vous allez à présent créer une chaîne dans le fichier de ressources.

Pour créer une chaîne de ressource dans l'assembly satellite

  1. Dans l'Explorateur de solutions, double-cliquez sur le fichier Resources.en-US.resx.

    Le fichier Resources.en-US.resx s'ouvre dans le Concepteur de ressources.

  2. Remplacez le nom de la chaîne par défaut String1 par helloWorldString.

  3. Remplacez la valeur de helloWorldString par Hello world.

  4. Enregistrez le fichier et fermez l'Éditeur de ressources.

Accès à la chaîne de ressource

Accédez à la chaîne dans l'assembly satellite à l'aide de la classe ResourceManager.

Pour accéder à la chaîne de ressource

  1. Ouvrez MainWindow.xaml.cs ou MainWindow.xaml.vb dans l'éditeur de code.

  2. .Insérez le code suivant dans la partie supérieure de MainWindow.xaml.cs ou MainWindow.xaml.vb.

    using System.Reflection;
    using System.Resources;
    
    Imports System.Reflection
    Imports System.Resources
    
  3. Insérez le code suivant dans le gestionnaire d'événements button1_Click.

    ResourceManager rm = new ResourceManager(
        "ResourceTest.Properties.Resources", 
         Assembly.GetExecutingAssembly());
    MessageBox.Show(rm.GetString("helloWorldString"));
    
    Dim rm As New ResourceManager( _
        "ResourceTest.Resources", _
        Assembly.GetExecutingAssembly())
    MessageBox.Show(rm.GetString("helloWorldString"))
    
  4. Appuyez sur F5 pour générer et exécuter l'application.

  5. Cliquez sur le bouton permettant d'afficher la valeur de chaîne chargée à partir de la ressource satellite.

  6. Ouvrez le dossier Debug/en-US pour consulter l'assembly satellite, nommé ResourceTest.resources.dll.

Voir aussi

Référence

ResourceManager

Autres ressources

Déploiement et localisation avec le Concepteur WPF

Encodage et localisation