ApplicationLanguages.PrimaryLanguageOverride 属性

定义

获取或设置应用的首选语言的替代,表示为 BCP-47 语言标记。 此设置是永久性的。

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

static void PrimaryLanguageOverride(winrt::hstring value);
public static string PrimaryLanguageOverride { get; set; }
var string = ApplicationLanguages.primaryLanguageOverride;
ApplicationLanguages.primaryLanguageOverride = string;
Public Shared Property PrimaryLanguageOverride As String

属性值

String

Platform::String

winrt::hstring

BCP-47 语言标记。 应用可以将其设置为覆盖用户首选语言排名列表 (ApplicationLanguages.Languages) 的热门语言,并且其值将在应用会话之间保留。 它必须是单一语言标记;带分隔符的语言标记列表将失败。

当应用获取值时,PrimaryLanguageOverride 将返回单个语言标记 ((如果应用以前已将属性设置为) )或空字符串。

注解

应用通常使用系统确定的语言设置运行,方法是将应用支持的语言与用户的语言首选项进行比较。 可以使用 ApplicationLanguages.Languages 属性获取该系统行为的设置。 PrimaryLanguageOverride 属性用于通过将特定语言设置为“语言”列表中的第一种语言来替代该行为。

PrimaryLanguageOverride 设置在会话之间保留。 不应在每次加载应用时设置它。 它仅应基于设置 UI 中显示的用户输入进行设置。 可以随时读取 属性。 如果从未设置属性,则返回一个空字符串。

设置 PrimaryLanguageOverride 时,这将立即反映在 ApplicationLanguages.Languages 属性中。 但是,此更改可能不会立即对应用 UI 中加载的资源生效。 若要确保应用响应此类更改,可以侦听默认资源上下文上的 QualifierValues 属性,并执行重新加载资源所需的任何操作。 这些要求可能因应用使用的 UI 框架而异,可能需要重启应用。

适用于

另请参阅