Problème localisation application windows
Bonjour,
J'ai mis en place une application Windows qui doit supporter le français et l'anglais.
Pour faire ça proprement, j'ai utilisé les fichiers de ressources proposés par le Framework .NET.
J'ai donc pour chacun de mes formulaires et pour mon projet des fichiers de resources anglais et français. Exemples :
- Mon formulaire principale à un fichier MainForm.resx (langue par défaut) et un fichier MainForm.fr.resx
- Mon application a un fichier Resources.resx et un fichier Resources.fr.resx
ETC...
Ce que je veux faire, c'est de permettre à mon application de forcer la culture pour afficher une langue donnée.
Pour se faire je faire je met ces lignes de code avant la fonction InitializeComponents() de mon formulaire (comme le précise la doc msdn)
Code:
1 2 3
|
System.Threading.Thread.CurrentThread.CurrentCulture = new System.Globalization.CultureInfo("fr-CA");
System.Threading.Thread.CurrentThread.CurrentUICulture = new System.Globalization.CultureInfo("fr-CA"); |
Et mes formulaires son a "Localizable=true"
En mode débugage, ceci marche PARFAITEMENT! En fonction de la culture définie (comme indiqué ci dessus) la fonction getString de mon resourceManager va bien chercher la bonne valeur.
Par compte, dès que je compile mon projet de déploiement et que j'installe mon application, il se passe les choses suivantes :
- La langue affichée dans mon application est celle des fichiers de ressources par défaut (l'anglais)
- Il n'y a pas d'exception anormale à l'exécution
Quelqu'un à une idée?
Merci d'avance
NB : Je travaille sur un poste Windows 7 configuré en anglais (Canada)