Csharp/CSharp Tutorial/GUI Windows Forms/Internationalization

Материал из .Net Framework эксперт
Перейти к: навигация, поиск

Internationalization Form: custom culture info

using System;
using System.Drawing;
using System.Collections;
using System.ruponentModel;
using System.Globalization;
using System.Windows.Forms;
using System.Data;
using System.Resources;
using System.Threading;
class I18NFormCustom: Form
{
  private Label l;
  private ResourceManager rm;
  public I18NFormCustom(string culture)
  {
    Thread.CurrentThread.CurrentUICulture = new CultureInfo(culture);
    rm=new ResourceManager("firstresource",this.GetType().Assembly);
    this.Size = new Size(400,100);
    this.Text=rm.GetString("WindowText");
    l = new Label();
    l.Location = new Point(3,5);
    l.Size = new Size(394,90);
    l.Font = new Font("Tahoma",36F,FontStyle.Bold);
    l.Text=rm.GetString("LabelText");
    l.Anchor = (AnchorStyles.Top | AnchorStyles.Left | AnchorStyles.Bottom | AnchorStyles.Right);
    this.Controls.Add(l);
  }
  static void Main(string[] args)
  {
    Application.Run(new I18NFormCustom("fr-FR"));
  }
}
/*
File: firstresource.txt
#Default culture resources
WindowText = Internationalization example
LabelText = Hello World!!!

File: firstresource.fr.txt
#Version Francaise.
WindowText = Franch
LabelText = Bonjour le monde!!!
*/