Comment faire en sorte que mon application .NET prenne en charge différentes langues

StackOverflow https://stackoverflow.com/questions/90061

  •  01-07-2019
  •  | 
  •  

Question

L’application que j’écris est presque terminée et j’aimerais que les personnes qui parlent différentes langues l’utilisent.

Je ne sais pas par où commencer, quelle est la différence entre la mondialisation et la culture en ce qui concerne la programmation?

Comment utiliser des expressions inhabituelles telles que "cette application a été construite pour faire ceci et cela" au lieu de Fichier, Ouvrir, Enregistrer, etc. ... et les transformer en say, Spanish?

Merci beaucoup: -)

Était-ce utile?

La solution

Microsoft a déjà un très bon didacticiel

.

Autres conseils

Vous avez différentes choses à faire pour avoir un environnement "globalisé". application.

1) Traduisez toutes les étiquettes de vos formulaires et contrôles de votre application

Vous devez définir la propriété " Localizable " à vrai sur chaque forme et contrôle. Cette propriété permet la création de fichiers de ressources dans chaque langue et région. Désormais, avec la propriété "Langue", vous pouvez sélectionner la langue que vous souhaitez prendre en charge. Lorsque vous sélectionnez une langue dans la liste de la liste déroulante, votre formulaire (ou contrôle) sera automatiquement basculé vers cette langue. Maintenant, votre travail consiste à traduire chaque mot du contrôle. Dès que vous apportez une modification, Visual Studio créera un fichier de ressources pour la langue spécifique. (Par exemple, MyForm.fr-FR.resx pour France-France).

2) Importez chaque chaîne codée en dur de votre code dans un fichier resx

Créez un fichier de ressources (j’utilise Personnellement StringTable.resx) et ajoutez chaque chaîne à traduire dans ce fichier. Après cela, créez un fichier de ressources pour chaque langue que vous souhaitez prendre en charge et traduisez les chaînes de chaque fichier. Par exemple, si vous souhaitez prendre en charge le français, vous créez StringTable.fr.resx ou StringTable.fr-FR.resx pour Français-France. Avec la classe ResourceManager , vous pouvez charger chaque chaîne.

Remarque: Si vous utilisez Visual Studio 2005 ou 2008, un fichier de ressources est déjà créé par défaut.

3) Vous devez élaborer judicieusement vos formulaires et vos contrôles

Instructions de Microsoft: Microsoft Directives

4) Gestion de la date et des chiffres

Si votre application crée des fichiers de données pouvant être envoyés à un autre utilisateur d'une autre région, vous devez y réfléchir lorsque vous enregistrez vos données dans le fichier. Donc, stockez toujours votre date et heure au format UTC et effectuez la conversion en local uniquement lorsque vous chargez les informations. La même chose s’applique aux nombres décimaux, en particulier s’ils sont stockés dans du texte.

Lorsque vous compilerez votre application, Visual Studion créera un fichier satellite tel que MyApplication.fr.dll dans un sous-dossier fr . Pour charger cette dll, vous devez changer la langue du thread actuel au démarrage de votre application.

Voici le code:

CultureInfo ci = new CultureInfo("fr");
Thread.CurrentThread.CurrentUICulture = ci;

Le livre ci-dessous répondra à toutes vos questions. Les premiers chapitres décrivent tous les concepts et la terminologie principaux, ainsi que des abréviations sophistiquées telles que i18n. Je n'ai pas eu le temps de le lire jusqu'à la fin .. mais bon jusqu'au point que j'ai lu. Recommandé si vous êtes sérieux au sujet de le faire correctement et que vous avez le temps:)

http://www.amazon.com/NET- Internationalization-Developers-Applications -Développement / dp / 0321341384 Image

Pour un système très simple, créez une interface définissant des méthodes telles que GetSaveText (), etc., et autorisez le montage d'assemblages de ce type dans votre application.

Cela devrait être une très bonne solution pour les chaînes allant de 10 à 1000 chaînes:

Avoir un fichier de ressources pour chaque environnement local. Je ne connais pas .NET, mais je suis sûr qu'il existe un moyen courant de le faire. Ensuite, dans votre code d’extraction de ressources, chargez le code approprié en fonction des paramètres régionaux du navigateur de votre utilisateur. Demandez à ce code de vous chercher la chaîne appropriée pour une clé.

Exemple de contenu de fichier, si je devais le mettre en œuvre à partir de zéro:

ressources.fr:

save=Save
close=Close
ok=OK
areYouSure=Are you sure?

resources.es:

save=I don't know how to say anything in Spanish, oops
close=...
ok=...
areYouSure=...
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top