Изменить язык для диалога после переопределения языка? - PullRequest
0 голосов
/ 03 декабря 2018

Мой код в MainPage.cs

ApplicationLanguages.PrimaryLanguageOverride = "ja-jp";

XAML

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

После этого я открыл диалог с моим кодом

 private async void Button_Click(object sender, RoutedEventArgs e)
        {
            {

                testDialog dialog = new testDialog();      
                await dialog.ShowAsync();

            }
        }

Мой XAML testDialog'sкод

 <TextBlock x:Uid="TestTextBlock" />

Я определил текст языка в файле Resources.resw, он работал нормально, если я помещаю текстовый блок в текущую MainPage, но когда я помещаю его в диалог, текст текстового блока не меняется, он толькоизменить после сброса приложения.Любые идеи, как я могу исправить это, ребята? '

1 Ответ

0 голосов
/ 03 декабря 2018

Установка нового языка:

Windows.Globalization.ApplicationLanguages.PrimaryLanguageOverride = "ja-jp";

Windows.ApplicationModel.Resources.Core.ResourceContext.GetForCurrentView().Reset();
Windows.ApplicationModel.Resources.Core.ResourceContext.GetForViewIndependentUse().Reset();

Обновить Текущая страница:

 private bool Reload(object param = null)
{
    var type = Frame.CurrentSourcePageType;

    try
    {
        return Frame.Navigate(type, param);
    }
    finally
     {
        Frame.BackStack.Remove(Frame.BackStack.Last());
     }

}

Также вы можете использовать Frame.Navigate(this.GetType()); для обновления пользовательского интерфейса текущей страницы.
пожалуйста, посмотрите наэтот пост для получения дополнительной информации: Динамически изменить язык универсального приложения

...