begin process at 2012 05 27 19:38:23
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Applications

 > PETIT EXEMPLE DE LOCALISATION

PETIT EXEMPLE DE LOCALISATION


 Information sur la source

Note :
10 / 10 - par 1 personne
10,00 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Applications Source .NET ( DotNet ) Classé sous :localisation, multilangage, culture Niveau :Débutant Date de création :07/11/2006 Vu / téléchargé :11 901 / 1 003

Auteur : jimmy69

Ecrire un message privé
Site perso
Commentaire sur cette source (10)
Ajouter un commentaire et/ou une note

 Description

Bonjour,

Petit exemple d'application qui vous montrera comment realiser un programme multi langue.

L'interet est donc d'affiche le texte de l'application (label, menu, bouton, ..) dans des langues differentes.

Comme vous pourrez le voir des fichier resx ont ete ajoutes au projet.
Ces fichiers ressources (resx) servent a stocker les differents string identifier par un id.

On a donc un fichier par langue.
Le contenu du fichier est divise en deux colonnes, l'id a gauche et la chaine de caracteres correspondante à droite.

Il y'a un bon exemple de localisation d'application sous Asp Net ici :
http://www.dotnet-tech.com/tutoriels/localisatio n/

Source

  • /*********************************************************************/
  • //Charge les string et les place dans la propriete text des controles
  • /*********************************************************************/
  • private void UpdateUI()
  • {
  • //Label
  • label1.Text = m_ResourceManager.GetString("label1");
  • //radio button et label choix
  • radioButton1.Text = m_ResourceManager.GetString("radioEn");
  • radioButton2.Text = m_ResourceManager.GetString("radioFr");
  • radioButton3.Text = m_ResourceManager.GetString("radioEs");
  • label2.Text = m_ResourceManager.GetString("label2");
  • //Bouton
  • button1.Text = m_ResourceManager.GetString("button1");
  • //Menu
  • menuItem.Text = m_ResourceManager.GetString("menuItem");
  • //Form
  • this.Text = m_ResourceManager.GetString("Form1");
  • //Message error
  • erro = m_ResourceManager.GetString("error");
  • }
  • //Click sur le botton
  • private void button1_Click(object sender, System.EventArgs e)
  • {
  • if(textBox1.Text == "")
  • MessageBox.Show(erro);
  • else
  • {
  • string message = String.Format(m_ResourceManager.GetString("message"), textBox1.Text);
  • MessageBox.Show(message);
  • }
  • }
  • //Selection de l'anglais
  • private void radioButton1_CheckedChanged(object sender, System.EventArgs e)
  • {
  • if(radioButton1.Checked)
  • {
  • Thread.CurrentThread.CurrentUICulture = m_EnglishCulture;
  • UpdateUI();
  • }
  • }
/*********************************************************************/
//Charge les string et les place dans la propriete text des controles
/*********************************************************************/

private void UpdateUI()
{
	//Label
	label1.Text = m_ResourceManager.GetString("label1");
			
	//radio button et label choix
	radioButton1.Text = m_ResourceManager.GetString("radioEn");
	radioButton2.Text = m_ResourceManager.GetString("radioFr");
	radioButton3.Text = m_ResourceManager.GetString("radioEs");
	label2.Text = m_ResourceManager.GetString("label2");

	//Bouton
	button1.Text = m_ResourceManager.GetString("button1");
			
	//Menu
	menuItem.Text = m_ResourceManager.GetString("menuItem");
			
	//Form
	this.Text = m_ResourceManager.GetString("Form1");

	//Message error
	erro = m_ResourceManager.GetString("error");

}


//Click sur le botton
private void button1_Click(object sender, System.EventArgs e)
{
	if(textBox1.Text == "")
		MessageBox.Show(erro);
	else
	{
		string message = String.Format(m_ResourceManager.GetString("message"), textBox1.Text);
		MessageBox.Show(message);
	}
}

//Selection de l'anglais
private void radioButton1_CheckedChanged(object sender, System.EventArgs e)
{
	if(radioButton1.Checked)
	{
		Thread.CurrentThread.CurrentUICulture = m_EnglishCulture;
		UpdateUI();
		}
}

 Conclusion


Ahhh oui ..mes traductions sont assez breves surtout en espagnole!
Pas de copine espagnole sous la main en ce moment ..:-)

Bonne semaine
Christophe
Un bouillonnais

 Fichier Zip

Les Membres Club peuvent télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !
  •   WinFormLocalisation
    •   bin
      •   Debug
        •   es-ES
          • WinFormLocalisation.resources.dllTélécharger ce fichier [Réservé aux membres club]3 584 octets
        •   fr-FR
          • WinFormLocalisation.resources.dllTélécharger ce fichier [Réservé aux membres club]3 584 octets
        • WinFormLocalisation.exeTélécharger ce fichier [Réservé aux membres club]28 672 octets
        • WinFormLocalisation.pdbTélécharger ce fichier [Réservé aux membres club]17 920 octets
    •   obj
      •   Debug
        •   es-ES
          • WinFormLocalisation.resources.dllTélécharger ce fichier [Réservé aux membres club]3 584 octets
        •   fr-FR
          • WinFormLocalisation.resources.dllTélécharger ce fichier [Réservé aux membres club]3 584 octets
        • temp
        • TempPE
        • WinFormLocalisation.exeTélécharger ce fichier [Réservé aux membres club]28 672 octets
        • WinFormLocalisation.ExempleLocalization.es-ES.resourcesTélécharger ce fichier [Réservé aux membres club]681 octets
        • WinFormLocalisation.ExempleLocalization.fr-FR.resourcesTélécharger ce fichier [Réservé aux membres club]725 octets
        • WinFormLocalisation.ExempleLocalization.resourcesTélécharger ce fichier [Réservé aux membres club]713 octets
        • WinFormLocalisation.Form1.resourcesTélécharger ce fichier [Réservé aux membres club]8 223 octets
        • WinFormLocalisation.pdbTélécharger ce fichier [Réservé aux membres club]17 920 octets
        • WinFormLocalisation.projdataTélécharger ce fichier [Réservé aux membres club]8 072 octets
    • App.icoTélécharger ce fichier [Réservé aux membres club]Voir ce fichier1 078 octets
    • AssemblyInfo.csTélécharger ce fichier [Réservé aux membres club]Voir ce fichier2 426 octets
    • ExempleLocalization.es-ES.resxTélécharger ce fichier [Réservé aux membres club]Voir ce fichier2 373 octets
    • ExempleLocalization.fr-FR.resxTélécharger ce fichier [Réservé aux membres club]Voir ce fichier2 417 octets
    • ExempleLocalization.resxTélécharger ce fichier [Réservé aux membres club]Voir ce fichier2 405 octets
    • Localisation.csTélécharger ce fichier [Réservé aux membres club]Voir ce fichier7 702 octets
    • Localisation.resxTélécharger ce fichier [Réservé aux membres club]Voir ce fichier11 363 octets
    • WinFormLocalisation.csprojTélécharger ce fichier [Réservé aux membres club]Voir ce fichier5 204 octets
    • WinFormLocalisation.csproj.userTélécharger ce fichier [Réservé aux membres club]Voir ce fichier1 803 octets
    • WinFormLocalisation.slnTélécharger ce fichier [Réservé aux membres club]Voir ce fichier923 octets
    • WinFormLocalisation.suoTélécharger ce fichier [Réservé aux membres club]9 216 octets

Télécharger le zip


 Sources du même auteur

Source .NET (Dotnet) DEBUTER AVEC ORACLE10G XE ET C#

 Sources de la même categorie

Source avec Zip Source .NET (Dotnet) UTILISATION DU BINDING AU TRAVERS DE L'OBJET DATABINDINGSOUR... par whismeril
Source avec Zip Source avec une capture GESTION DE TACHES par thebigboss
Source avec Zip Source avec une capture Source .NET (Dotnet) VERIFIER VOTRE CODE RIO (RELEVE IDENTIFIANT OPERATEUR) POUR ... par dodo7263
Source avec Zip Source avec une capture Source .NET (Dotnet) CONTRÔLES : BOUTON, LISTE ET PANNEAU POUR VOS APPLIS par Mokost
Source avec Zip Source .NET (Dotnet) UTILITAIRE SKYDRIVE par MasterShadows

 Sources en rapport avec celle ci

Source avec Zip Source .NET (Dotnet) LOCALISATION DES PROPRIÉTÉS TYPE 'STRING' DES OBJETS par ppao
Source avec Zip Source .NET (Dotnet) CALCULATRICE FR/EN par niochaut

Commentaires et avis

Commentaire de JulioDelphi le 07/11/2006 17:34:55 administrateur CS

salut, je ne connais pas (encore) le C#, il faut vraiment tout ça pour juste ... ça ??
je parle des 4 DLL, etc etc :o c'est enorme :p

Commentaire de jimmy69 le 07/11/2006 18:46:46

salut salut JulioDelphi,

Euh pour repondre a ta question en fait j'ai zippe tout le projet y compris le repertoire debug ou se trouve le resultat de la compilation !J'aurais tres bien pu ne mettre que les fichiers necessaires pour faire tourner l'application.

Quant au 4 dll, en fait il genere une dll par language ..
Quand tu build ton projet, il te genere aussi un repertoire portant le nom de la langue.

Maintenant est ce enorme ...je pense pas !

Les pros nous en diront surement plus a ce sujet !

Christophe
Un bouillonnais

Commentaire de JulioDelphi le 07/11/2006 18:49:48 administrateur CS

j'ai trouvé ça enorme comparé à un projet Delphi où j'aurais besoin de 3/4 fichiers maxi.
"une dll par langage" c'est a dire ? ya + que du C# la dedans ?

Commentaire de Bidou le 07/11/2006 19:00:37 administrateur CS

Il s'agit en fait de "satellite resource assemblies" qui ne sont rien d'autres que les fichiers resx que l'ont définit (fichiers de ressources). Il y en a un par language, pour des questions de simplicité.

Commentaire de Elektordi le 07/11/2006 22:46:36

Un fichier par language ca simplifie la disribution de l'appli et la mise à jour de nouveaux fichiers de langues facilement (pas besoin de toucher à l'exe) !

Commentaire de taupe4 le 08/11/2006 01:03:20

Je préfère tout de même mettre à disposion les .resx directement et les incorporer à l'application sans effort (le constructeur permet de charger des fichiers externes).

Sinon, ça aidera les débutants à utiliser la localisation fournie avec .NET :)

Commentaire de sebmafate le 08/11/2006 09:26:59 administrateur CS

L'avantage des DLL par rapport aux resx, c'est qu'elles sont compilées et donc plus rapide d'acces, protégées des modifications hazardeuses des utilisateurs...

Commentaire de taupe4 le 10/11/2006 01:18:49

Si quelqu'un tente de faire des modifications hazardeuses sur les fichiers, un utilitaire intégré à presque tous mes programmes appellé fstrestore.exe effectue une récupération (soit par internet, soit par une copie de sauvegarde) sur le fichier.

Mais bien vu pour la DLL;) Personnellement, j'essaie de modifier les resources intégrées dans l'éxécutable, mais ça fournit des résultats trop mauvais et une récupération du programme est indispensable.

Commentaire de jimmy69 le 10/11/2006 10:44:43

salut salut,

Merci pour l'info !

Christophe
Un bouillonnais

Commentaire de peug le 26/01/2009 16:30:12 10/10

Merci je suis débutant en C# (vient de VB6) et je cherchais un similaire !

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

connexion à interBase [ par billou_13 ] Bonjour, J'essaie de me connecter à interBase en c# et je n'y arrive pas. Ma base de données s'appelle localisation. Pour le moment, j'ai & Problème de culture..... [ par emmanuel9 ] Bonjour à tous, En faite j'ai : // Quand on appui sur un bouton  Convert c ;  CultureInfo  regional  = new CultureInfo( problème de culture, virgule , etc..... [ par emmanuel9 ] Bonjour, Alors là ca se complique, j'ai 15,150 et je remplace la "," par la virgule de la culture en cours. donc c.Todecimal(resultat2) marche [.NET] Problème de ressources [ par cedkat ] Bonjur,Voila mon problème, Après compilation réussi, je lance l'appli, et lors du lancement d'un fenetre (qui machais tres bien jusqu'a Recherche entre 2 date (Between) [ par Jackboy ] Bonjour !J'ai 2 champs texte donc l'usager entre les dates et je veux récupérer des valeurs selon 2 date dans ma bd Access. Le champ date de URGENT_ Erreur resource [ par RM50Man ] Bonjour,J'ai une grave erreur quiu est apparu d'un coup a la compilation, alors que tout allait bien, je relance mon prjet pour la 50eme fois et il m' localisation des dll de resources multilangues [ par franckypoune ] Bonjour à tous,J'ai une DLL qui supporte 2 langues , le français et l'anglais.Visual m'a donc créée 2 dll de ressources respective Multilangage et fichier resx [ par watoubilly ] Bonjour, je suis en train de faire un appli multilangage non dynamic.C'est a dire que c'est lorsque je publi mon code que je passe en francé ou (par d Changer La culture Du OS [ par swedikiluka ] Bonjour à tout le monde,je connais un problème avec mon petit programme sur les conversions de format de DATES.Tout au long de mon développement j'uti Localisation & RichEdit [ par scoubidou944 ] Je fais des tests sur mes prog sur les saisies utilisateur.Par exemple si on tente Int32.Parse (0.5) ou Int32.Parse (0,5) on aura ou non une exception


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

Photothèque

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,139 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales