Поделиться через


FrameworkElement.Language Свойство

Определение

Возвращает или задает сведения о языке локализации и глобализации, которые применяются к FrameworkElement, а также ко всем дочерним элементам текущего FrameworkElement в представлении объекта и пользовательском интерфейсе.

public:
 property Platform::String ^ Language { Platform::String ^ get(); void set(Platform::String ^ value); };
winrt::hstring Language();

void Language(winrt::hstring value);
public string Language { get; set; }
var string = frameworkElement.language;
frameworkElement.language = string;
Public Property Language As String
<frameworkElement Language="languageString" />

Значение свойства

String

Platform::String

winrt::hstring

Строка, указывающая язык и региональные параметры, которые соответствуют стандартам IETF BCP 47 . Например, английский язык США — "en-US".

Комментарии

Свойство Language предназначено для задания параметра языка для каждого элемента для выбранных элементов в большом пользовательском интерфейсе. Основной причиной этого является влияние на свойства и параметры, связанные с текстом, такие как значения по умолчанию или резервные шрифты FontFamily для текстовой презентации.

Значение по умолчанию для этого свойства — это верхний язык из списка языков приложения, который является производным от списка предпочтительных языков пользователя. Рекомендуется оставить значение по умолчанию для этого свойства, так как оно обеспечит лучший интерфейс пользователя с точки зрения резервного шрифта. Например, если приложение отображает содержимое Восточной Азии и пользователь указал язык Восточной Азии в профиле пользователя, содержимое будет отображаться в нужном шрифте Восточной Азии.

Свойство Language в основном относится к этим подклассам FrameworkElement :

Класс TextElement также имеет свойство Language , и оно имеет аналогичное назначение и поведение для подклассов TextElement , таких как Run.

Если оно не задано в качестве атрибута, значение по умолчанию для языка определяется другими, большими факторами, влияющими на глобализацию и параметры локализации для вашего приложения. К ним относятся системные параметры пользователя. Дополнительные сведения см. в статье "Глобализация приложения".

Язык на элементах пользовательского интерфейса является лишь небольшой частью того, что можно сделать для подготовки приложения для локализации и глобализации. Например, обычно вам нужно назвать или загрузить ресурсы, такие как строки и изображения, и включить эти ресурсы в пакет приложения. Кроме того, необходимо применить значения директив x:Uid ко всем элементам, которые должны использовать квалификаторы ресурсов для получения ресурса для конкретного языка. Дополнительные сведения см. в статье "Глобализация приложения".

При установке языка в разметке следует использовать файл ресурсов RESW для указания строки BCP 47, а не жесткого написания строки в разметке. Укажите значение директивы x:Uid для этого элемента, в котором необходимо указать язык, чтобы система ресурсов может нацелиться на элемент. Затем укажите строковый ресурс строки строки BCP 47, которая соответствует имени папки ресурсов, из которую поступает ресурс. Вероятно, в проекте уже есть ФАЙЛ RESW, предоставляющий обычные локализованные строки пользовательского интерфейса. Дополнительные сведения см. в кратком руководстве по переводу ресурсов пользовательского интерфейса.

FrameworkElement.Language и xml:lang

XAML — это язык, основанный на XML, и следует основным правилам XML. Это включает в себя поддержку XML-конструкций, таких как атрибут lang из пространства имен XML языка XML. Xml:lang можно указать в элементе объекта для подкласса FrameworkElement , и он обрабатывается так же, как если бы это было значение языка, так как оно использует ту же обработку строкового атрибута BCP 47. Можно также указать xml:lang в элементе объекта, который не является подклассом FrameworkElement , хотя обычно это не приведет к изменению поведения этого элемента.

Язык намеренно использует структуру наследования свойств, чтобы значение для набора языков в корневом элементе распространяло это значение ко всем дочерним объектам в визуальном дереве, которые также являются FrameworkElement. Это параллельно поведению xml:lang в XML и XML-DOM. Кроме того, язык можно использовать во время выполнения для чтения значения xml:lang, заданного в разметке, если элемент, из который вы читаете, является подклассом FrameworkElement , который имеет свойство Language.

Однако нельзя указать атрибуты Language и xml:lang в одном элементе объекта, что приведет к ошибке синтаксического анализа XAML.

Примечания о переходе

Этот API принимает строку. В эквивалентном API Windows Presentation Foundation (WPF) тип этого свойства является вспомогательным объектом, который упаковывает ту же строку. Вы можете импортировать XAML из других проектов, не замечая эту разницу, так как способ анализа строки XAML идентичен.

Применяется к

См. также раздел