ApplicationLanguages Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Задает параметры, связанные с языком, которые приложение может использовать и поддерживать.
public ref class ApplicationLanguages abstract sealed
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class ApplicationLanguages final
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public static class ApplicationLanguages
Public Class ApplicationLanguages
- Наследование
- Атрибуты
Требования к Windows
Семейство устройств |
Windows 10 (появилось в 10.0.10240.0)
|
API contract |
Windows.Foundation.UniversalApiContract (появилось в v1.0)
|
Комментарии
Языки, на которые ссылается этот класс, представлены тегами языка BCP-47. Каждый из них является идентификатором языка, а не именем языкового стандарта, хотя в структурном плане они могут быть одинаковыми. В качестве языкового тега "en-US" означает американский английский (или диалект английского языка, на котором говорят в США). Он не делает никаких утверждений о фактическом расположении говорящих (хотя многие из них действительно проживают в США) и никаких других претензий о соглашениях, которые используются в США, таких как система измерения или валюта.
Пример
Windows.Globalization.ApplicationLanguages.PrimaryLanguageOverride = "en-US"
Примечание
Если ваше приложение передает языковые теги из этого класса в любые функции поддержки национальных языков , оно должно сначала преобразовать теги, вызвав ResolveLocaleName.
Языковые теги поддерживают расширения Юникода "ca-" и "nu-". (См. раздел Определения ключей и типов Юникода.) Обратите внимание, что эти расширения могут повлиять на числовую систему или календарь, используемые объектами глобализации.
Приложения UWP можно развернуть с помощью пакетов ресурсов. При использовании пакетов языковых ресурсов пакеты, установленные и зарегистрированные для данного пользователя, определяются языками в языковом профиле пользователя. В результате не все языки, включенные в пакет приложений, отправленный в Microsoft Store, обязательно будут доступны для использования во время выполнения. Для свойства PrimaryLanguageOverride следует задать только языки, доступные для пользователя.
Языки, доступные приложению для использования в качестве объекта ApplicationLanguages во время выполнения, ограничены теми языками, которые включены в манифест пакета приложения main, и языками, соответствующими пакетам языковых ресурсов, которые применимы к пользователю (определяются соответствующими языками в настройках пользователя), а также которые устанавливаются и зарегистрированы для пользователя. Свойство ApplicationLanguages.ManifestLanguages отражает пакеты языковых ресурсов, доступные пользователю, и возвращает соответствующий набор языков, который можно использовать для задания свойства PrimaryLanguageOverride .
Свойство ApplicationLanguages.Languages вернет список, похожий на свойство ManifestLanguages . Он может отличаться, включая региональные языковые варианты, не перечисленные ни в одном манифесте пакета; Например, "en-CA" (английский (Канада)) может быть возвращено свойством Languages , если у пользователя есть "en-CA" в профиле и приложение поддерживает любой региональный вариант английского языка. Такие региональные варианты языка, производные от пользователя, могут быть предпочтительнее для задания свойства PrimaryLanguageOverride , так как приложение затем обеспечит поведение глобализации, более подходящее для пользователя.
Если язык находится в пакете приложения main, но не соответствует ни одному языку в предпочтениях пользователя, он возвращается свойством ManifestLanguages, но не свойством Languages. Их также можно использовать для задания свойства PrimaryLanguageOverride . Однако, поскольку эти языки не отражаются в предпочтениях пользователя, пользователь может не понимать эти языки. Такие параметры следует использовать только при непосредственном выборе пользователем.
Журнал версий
Версия Windows | Версия пакета SDK | Добавленная стоимость |
---|---|---|
1803 | 17134 | GetLanguagesForUser |
Свойства
Languages |
Возвращает ранжированный список текущих языковых значений среды выполнения, предпочитаемых пользователем. |
ManifestLanguages |
Возвращает объявленный в приложении список поддерживаемых языков. |
PrimaryLanguageOverride |
Возвращает или задает переопределение для предпочитаемого языка приложения, выраженное в виде тега языка BCP-47 . Этот параметр сохраняется. |
Методы
GetLanguagesForUser(User) |
Извлекает языковые предпочтения указанного пользователя. Этот API является частью поддержки многопользовательских приложений (MUA). |