none
Globalisation : application multi langues RRS feed

  • Question

  • Bonjour à tous,

    Je souhaite faire une version multi langue (ex : FR, EN, IT..) de mon application windows forms.

    J’ai fait quelques recherches sur le net et ai trouvé différents tutoriaux sur la Globalisation, mais j’ai un peu du mal.

    J’enregistre dans ma base de données la langue de l’utilisateur et souhaite adapter l’application à sa langue.

    J’ai créé mes fichiers ressource (.resx) langues.

    J’ai défini ceci :

    ResourceManager RM = new ResourceManager("Form1.Languages.Fr", typeof(TabUC).Assembly);

    Je récupère donc la langue et la définis comme ceci :

    switch (ContextSession.WorkingUser.LanguageId)
                {
                    case 1:
                        Thread.CurrentThread.CurrentUICulture = new System.Globalization.CultureInfo("fr-FR");
                        break;
                    case 2:
                        Thread.CurrentThread.CurrentUICulture = new System.Globalization.CultureInfo("nl-NL");
                        break;
                    case 3:
                        Thread.CurrentThread.CurrentUICulture = new System.Globalization.CultureInfo("en-US");
                        break;
                    default:
                        Thread.CurrentThread.CurrentUICulture = new System.Globalization.CultureInfo("en-US");
                        break;
                }
    

    Et j’applique cela sur un label comme ceci :

    Label.text = RM.GetString("MonLabel");

    Cela fonctionne pour la version Fr mais pour les autres versions, je tombe bien dans le bon case de mon switch mais c’est toujours le fr qui apparaît.<o:p></o:p>

    Pourriez- vous me donner quelques explications?

    Merci à tous pour votre aide.

    lundi 5 janvier 2015 22:27

Réponses

Toutes les réponses