Classe de traduction

5/5 (9 avis)

Vue 10 604 fois - Téléchargée 475 fois

Description

J'ai développé une classe de traduction. Alors oui ça existe dans visual studio, mais ça n'est pas très flexibles d'avoir des dll pour des traductions classées et nommées dans des dossiers sans avoir le choix. De plus pour l'ajout d'une langue ou même un simple correction il faut recompiler le projet et redéployer les dlls c'est un peu lourd.
J'ai donc développé une classe dont la majorité des fonctions sont statics. La classe va chercher les fichiers trads.xx.xml (le nom et l'ext sont modifiables dans les constantes) et charge les traductions dans des HashTables. L'utilisation est très simple, un seul appel de fonction pour traduire la feuille. Une autre fonction pour récupérer la trad qui correspond au code, changement de langue sans redémarrer l'appli, etc.
Je l'ai déjà utilisé sans soucis majeurs, elle n'est pas parfaite, mais je la trouve vraiment très pratique.

Source / Exemple :


//Pour choisir une langue
CTrad.ChoixLangue(lsCodeLangue, false);//lsCodeLangue="fr" ou ="us" ou un autre code langue

//Voir le zip il y a une très petite appli de test

//pour traduire une feuille ou un UserControl
CTraduction.TraduireFeuille(this);

//pour changer la langue en execution
CTraduction.TraduireFeuille(this, true);
CTraduction.ChoixLangue(lsCodeLangue); //lsCodeLangue="fr" ou ="us" ou un autre code langue
CTraduction.TraduireFeuille(this, false);

//Pour récupérer une traduction
CTraduction.Donne("MATRADUCTION")

Conclusion :


vous pouvez aussi visiter mon site internet : http://www.oximoron.fr

Codes Sources

A voir également

Ajouter un commentaire Commentaires
cs_Warny
Messages postés
473
Date d'inscription
mercredi 7 août 2002
Statut
Membre
Dernière intervention
10 juin 2015

18 févr. 2008 à 06:23
En fait, malgré ce qui peut être indiqué dans les sources, ça marche dès le framework 2.0. Mais pas en 1.1 effectivement.
oximoron
Messages postés
149
Date d'inscription
mercredi 23 juillet 2003
Statut
Membre
Dernière intervention
30 janvier 2009

16 févr. 2008 à 19:11
Merci beaucoup, je vais regarder ca mais je ne vais pas l'adapter à ma classe de traduction, car ca nécéssite le framework 3.0, ce qui est un peu pénalisant. Beaucoup d'application en sont encore au 2.0 voir au 1.1... Donc c'est sera pour la prochaine ;)
cs_Warny
Messages postés
473
Date d'inscription
mercredi 7 août 2002
Statut
Membre
Dernière intervention
10 juin 2015

16 févr. 2008 à 18:59
J'ai retrouvé, il s'agit des propriété d'extensions.
Ce code permettrait (mais je n'ai pas véréifié) de produire le résultat souhaité : http://www.dotnet-news.com/lien.aspx?ID=30487
Sinon, il faut chercher des exemples reprenant l'interface IExtender et la classe d'attribut ProvidePropertyAttribute.

J'ai trouvé aussi cet autre exemple : http://files.codes-sources.com/fichier.aspx?id=33786&f=AutoCompletionTextBox%5cAutoCompleteExtender.cs
cs_Warny
Messages postés
473
Date d'inscription
mercredi 7 août 2002
Statut
Membre
Dernière intervention
10 juin 2015

15 févr. 2008 à 11:01
malheureusement non, je n'ai pas plus d'infos.
Mais tu peux regarder comment ça fonctionne grâce à décompilateur gratuit reflector.
oximoron
Messages postés
149
Date d'inscription
mercredi 23 juillet 2003
Statut
Membre
Dernière intervention
30 janvier 2009

15 févr. 2008 à 10:53
Warny, c'est interessant, tu aurait un peu plus d'info genre quelques liens ?
Afficher les 9 commentaires

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.