Опрос
Вы участвуете в программе Windows Insider?
Популярные новости
Обсуждаемые новости

Лучшие методы для глобализации и локализации в WPF

Напечатать страницу
13.07.2006 00:49 | lexa

Вы можете максимально использовать функциональные возможности локализации и глобализацию, которые встроены в Windows Presentation Foundation (WPF), благодаря UI и локализованным подсказка, которые предоставлены в данной статье...

Когда Вы разрабатываете UI, основанный на WPF, придерживайтесь следующих методов:

1. Пишите свой UI в XAML; избегайте создания UI в коде. Когда Вы создаете UI используя XAML, Вы передаете его на выполнение встроенной локализации API.

2. Избегайте использования строго фиксированного положения и фиксированных размеров UI, вместо этого используйте автоматическое определение размеров.
- Использование SizeToContent; установите автоматическое определение ширины и высоты.
- Избегайте использования Canvas для вашего UI.
- Используйте Grid (Сеть) и ее возможности для выравнивания.

3. Оставляйте место по краям, так как фиксированный текст, часто требует много места. Дополнительное место даст возможность разместиться выступающим символам.

4. Включите TextWrapping на TextBlock для отсечения лишнего текста.

5. Установите атрибут xml:lang. Этот атрибут описывает культуру определенного элемента. Цель этого свойства изменить поведение возможностей WPF. Например, изменит поведение расстановки переносов, проверки орфографии, замещения чисел, сложного формирования script, и отступления шрифтов.

6. Создавайте настраиваемые шрифты для получить контроля над шрифтами, используемых для различных языков. По умолчанию, Windows Presentation Foundation использует шрифт GlobalUserInterface.composite, расположенный в папке Windows\Fonts.

7. Когда Вы создаете приложения, которые могут быть ограничены в представлении текста формата right-to-left(слева-направо), установите FlowDirection каждой страницы, чтобы страница не наследовала FlowDirection из NavigationWindow.

8. Когда Вы создаете автономные приложения, которые принимаются вне браузера, установите StartupURI для вашего начального приложения к NavigationWindow, вместо страницы(например: <Application StartupUri="NavigationWindow.xaml">). Это позволит Вам изменить FlowDirection окна и панель навигации.

Когда Вы локализуете WPF приложения, примите к сведению следующие методы:

1. Используйте комментарии локализации, для предоставления дополнительного контекста.

2. Используйте атрибуты локализации для ее управления вместо того, чтобы пренебрегать Uid свойствами элементов.

3. Используйте msbuild /t:updateuid и /t:checkuid для добавления и проверки Uid свойств в XAML. Используйте Uid свойства, чтобы отследить изменения между разработкой и локализацией. Uid cвойства помогут Вам локализовать новые изменения в разработке приложения. Если Вы добавляете Uid свойства вручную в ваш UI, то это, довольно таки, нудное занятие.

4. Не редактируйте и не изменяйте Uid свойства после того, как Вы начали локализацию.

5. Не дублируйте Uid свойства.

6. Установите местоположение UltimateResourceFallback в AssemblyInfo.*, чтобы определить соответствующий язык для отступлений(например: [assembly: NeutralResourcesLanguage("en-US", UltimateResourceFallbackLocation.Satellite)]).

7. Если Вы решили включить ваш исходный код в основной проект, пренебрегая тэгом <UICulture>, установите местоположение UltimateResourceFallback, как главное в проекте(например: [assembly: NeutralResourcesLanguage("en-US", UltimateResourceFallbackLocation.MainAssembly)]).

Источник: http://blogs.msdn.com/wpfsdk/
Перевод: lexa

Комментарии

Комментариев нет...
Для возможности комментировать войдите в 1 клик через

По теме

Акции MSFT
420.55 0.00
Акции торгуются с 17:30 до 00:00 по Москве
Все права принадлежат © ms insider @thevista.ru, 2022
Сайт является источником уникальной информации о семействе операционных систем Windows и других продуктах Microsoft. Перепечатка материалов возможна только с разрешения редакции.
Работает на WMS 2.34 (Страница создана за 0.074 секунд (Общее время SQL: 0.056 секунд - SQL запросов: 53 - Среднее время SQL: 0.00106 секунд))
Top.Mail.Ru