Petit exemple de localisation

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/localisation/

Source / Exemple :


/*********************************************************************/
//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

Codes Sources

A voir également

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.