Имя Пароль
Зарегистрироваться


* При перепечатке материалов ссылка на www.SeoLiga.ru обязательна! RSS



Локализация формы
8 февраля 2009

^ Создание локализованной версии формы
1. В окне дизайнера выберите форму Forml и в окне Properties присвойте ее свой-
ству Localiiable значение true.
Обратите внимание, что свойства Language по умолчанию установлено в (Default).
Текущие свойства пользовательского интерфейса станут параметрами, опреде-
ляющими его облик при выборе языка по умолчанию.
2. В окне Properties поменяйте значение свойства Language с (Default) на Italian (Italy).
3. В окне Properties; установите для свойств, перечисленных в таблице 8-5, значе-
ния, указанные в этой таблице.
Таблица 8-5. Значения ресурсов для итальянской версии формы
Свойство Значение
IblQuantity. Text Quantita
IblPrice. Text Prezzo
ibiTotal.Text Totale
btnAdd. Text Aggiungi ordine
btnClear.Text Rimuovi ordine
btnClearAll.Text Rimuovi tutti gli ordini
BtnPrint. Text Stampa
Чтобы ввести символ «а», наберите 0224 на цифровой клавиатуре, удерживая на-
жатой клавишу Alt, либо воспользуйтесь стандартной программой Windows XP
Character map (Таблица символов). Чтобы вызвать ее, щелкните Start\All Frograms\
Accessories\System Tools (Пуск\Все программы\Стандартные\Служебыые).
Примечание Для корректного отображения содержимого на итальянском ячыке
иногда приходится изменять размер некоторых элементов управления или формы.
В окне Properties установите свойство Language в (Default). Заметьте, что надпи-
сям на элементах управления возвращается исходный вид.
В меню Project выберите команду Add Windows Form. Назовите новую форму
frmLanguage и щелкните ОК.
В окне дизайнера поместите на созданную форму поле со списком и кнопку,
Установите для этих элементов управления свойства, как показано в таблице 8-6.
Таблица 8-6. Элементы управления формы Select Locale н их свойства
Элемент управления
frmLanguage
ComboBoxl
Свойство
Text
Name
Text
Items (add)
Items (add)
Items (add)
Значение
Choose your locale.
cmbLocale
Please select a locale.
United States
Great Britain
Italy
7. В редакторе кода добавьте к форме frmLanguage обработчик события Selected-
IndexChanged для элемента управления cmbLocale. Он должен установить назна-
чать приложению и интерфейсу выбранную культуру и закрыть форму выбора
языка. Вот примерный код этого обработчика:
Visual Basic .NET
Private Sub CTibLocale_SelectedInd6xChanged{ByVal sender As _
System.Object. ByVal e As System.EventArgs) Handles _
cmbLocale.SelectedlndexChanged
Dim aString As String
aString = CTypefcrnbLocale. Selectedltem, String)
Select Case aString
Case "United States"
1 Американский вариант английского является языком по умолчанию,
1 поэтому дополнительных действий не требуется.
Me.CloseO
Case "Great Britain"
System.Threading.Thread.CurrentThread.CurrentCulture - _
New System.Globalization.Си ItureInfo("en-GB")
System.Threading.Thread.СиrrentThread.Си гrentUICulture _
- New System.Globalization.CultureInfo("en-GB")
Me.CloseO
Case "Italy"
System. Threading. Thread. CurrentThread. CurrentCulture =
New System. Globalization. Cult ureInfo("it-IT")
System. Threading. Thread. CurrentThread. Cur rent UlCultu re
= New System. Globalization. CultureInfo("it-IT")
Me.CloseO
End Select
End Sub
Visual C#
private void crnbLocale_SelectedIndexChanged(object sender,
System. EventArgs e)
{
string aString;
aString = (string)crnbLocale.Selectedltem;
switch (aString)
{
case "United States":
// Американский вариант английского является языком по умолчанию,
// поэтому дополнительных действий не требуется.
this.CloseO;
break;
case "Great Britain";
System. Threading. Thread. CurrentThread. CurrentCulture = new
System. Globalization. Cult ureInfo("en-GB");
Syst em. Threading. Thread. CurrentThread. Си rrentUICultu re =
new System. Globalization. Си ltureInfo("en-GB");
this.CloseO;
break;
case "Italy" :
System. Threading. Thread. CurrentThread. CurrentCulture = new
System. Globalization. Culturelnfo( "it-IT" );
System. Threading. Thread. CurrentThread. Си rrentUICultu re =
new System. Globalization. Cult urelnfo( "it-IT");
this.CloseO;
break;
Откройте форму Forml в редакторе кола и найдите ее конструктор. Сразу после
вызова конструктора базового класса [после строки MyBase.NewQ — в Visual
Basic .NET] или в начале конструктора (Visual C#) добавьте следующий код:
Visual Basic .NET
Dim aForoi As New frmlanguageO
aForm.ShowDialogO
Visual C#
frmLanguage aForm = new fnpLanguagef);
aForm.ShowDialogO;
Примечание Чтобы открыть конструктор формы в редакторе кода Visual Basic,
следует развернуть область с пометкой «Windows Form Designer generated code».
9. Сохраните приложение и протестируйте его. В первой форме выберите регион
«United States» и протестируйте приложение с этой версией интерфейса. Заметь-
те, что денежные суммы форматируются с использованием знака доллара ($),
согласно формату, принятому в США. Закройте приложение и запустите его
снова, На этот раз выберите «Great Britain». Теперь денежные суммы отобража-
ются с использованием знака «фунт стерлингов» (£). Закройте приложение и за-
пустите его еще раз, выбрав регион «Italy». Обратите внимание, что загружается
локализованная версия формы с соответствующим заголовком. При этом денеж-
ные суммы отображаются с использованием знака евро согласно правилам, при-
нятым в Европе: запятая является разделителем десятичных дробей, а точка от-
деляет разряды тысяч.

Теги: .NET

Статьи по теме:

Создание класса строго типизированного набора на основе класса CollectionBase
Оповещение пользователя об ошибках ввода
Проект установочной программы
Применение встроенной функциональности типов данных
Установка сборок в виде компилированных образов
Редакторы свойств программы установки
Создание перегруженных методов
Тестирование элемента управления
Перечисления CTS
Модификация и обновление данных
Стандартная система типов CTS
Применение компонента HelpProvider
Класс DataViewManager
Применение объектов DataSet и обновление данных
Генерация исключений
| .NET | Pavel |
 


Пн Вт Ср Чт Пт Сб Вс
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31


     



Rambler's Top100

Данный сайт или домен продается ICQ: 403-353-727

© 2009 Seoliga.ru | .NET | Локализация формы. Регион сайта: Москва и Санкт-Петербург