2009-07-11 3 views
1

Il existe (pour moi) un problème avec MessageBox show.Langues mixtes entre texte et boutons dans une application .Net multilingue

Mon application est multilingue (anglais/allemand).

Je suis en train de tester sur une fenêtre quelle langue est en anglais. La définition de l'application en allemand fonctionne correctement, mais l'affichage d'un MessageBox crée un mélange des langues. Le message est en allemand (via les fichiers de ressources) et la langue des boutons dans la boîte de message est en anglais (Oui Non au lieu de Ja Nein). Mon client utilise uniquement des versions allemandes de Windows et peut avoir le problème opposé -> boutons en allemand et (messagebox) texte en anglais s'il veut utiliser l'application en anglais.

Les modules linguistiques .NET peuvent-ils résoudre ces conflits? Moyens -> Installation de .NET Language Packs pour éviter ce mélange de langues.

message box http://img401.imageshack.us/img401/1914/dlglang.jpg

Répondre

4

packs de langage .NET ne affecte le texte des éléments OS (évidemment!). Ils n'affectent donc pas le texte des boutons dans les boîtes de message WinForms, car ils utilisent la fonction Win32 MessageBox. Cela signifie que si votre client dispose d'une version allemande de Windows, tous les éléments de l'interface utilisateur, tels que ces boutons, seront en allemand, quoi qu'il arrive. S'il a Vista, il peut acheter des packs de langues supplémentaires, mais même alors un seul peut être actif pour l'utilisateur (et non pour une application spécifique) à un moment donné. Si votre client désire utiliser votre application en anglais seulement, il doit soit utiliser une version Windows anglaise, soit coder votre propre boîte de message où vous définissez vous-même les étiquettes de bouton.

Questions connexes