如何更改CalendarDatePicker UWP的语言?

时间:2018-12-04 08:39:54

标签: c# uwp localization calendar

如何不使用CalendarIndentifier将日历的语言更改为日语。

MainPage的XAML

<Button content="Click" Click="Button_Click" />

MainPage.xaml.cs

private async void Button_Click(object sender, RoutedEventArgs e)
{
    ApplicationLanguages.PrimaryLanguageOverride = "ja-jp";    
    testDialog dialog = new testDialog();      
    await dialog.ShowAsync();
}

我的日历在testDialog中。

testDialog的xaml

<CalendarDatePicker />

CalendarDatePicker的语言不会立即更改,在我关闭应用程序并打开后会更改

我当前的操作系统语言为:en-us

1 个答案:

答案 0 :(得分:0)

来自the docs

  

设置PrimaryLanguageOverride时,这将立即反映在ApplicationLanguages.Languages属性中。 但是,此更改可能不会立即对应用程序UI中加载的资源生效。

     

为确保应用程序对此类更改做出响应,您可以在默认资源上下文中侦听QualifierValues属性,并采取可能需要的任何操作来重新加载资源。这些要求可能会因应用程序使用的UI框架而异,并且可能需要重新启动应用程序。