2016-02-27 7 views
0

У меня есть приложение UWP с двумя языками. Для некоторых ярлыков я использовал: Loader.GetString("LableName") в кодировке и для других: x:Uid в XAML. Пользователей могут изменить CurrentCulture с помощью кнопки, как это:Связывание ресурса с Xaml x: Uid несколько раз не работает

CultureInfo.CurrentCulture = new CultureInfo("fa-IR"); 

Впервые полностью работать правильно, Но в течение следующих раз, после того, как кнопка нажата, эти ярлыки, которые связаны в отделенном коде будут работать правильно, Но те, которые связаны в XAML с X:Uid, все еще отображают предыдущие строки ресурсов языка.

Может кто-нибудь мне помочь?

ответ

0

Вы можете использовать свойство кнопки: дважды щелкните по кнопке, после того как вам нужно установить значение метки в методе «button_click».

1

В WPF мы используем что-то вроде этого, чтобы применить культуру на элементы окна (reference), использовать его в UWP приложение, я надеюсь, что это поможет:

public MyWindow() 
{  
    this.Language = XmlLanguage.GetLanguage(CultureInfo.CurrentCulture.IetfLanguageTag); 
    InitializeComponent(); 
} 

Вы также можете установить язык глобально для всей вашей приложение в классе приложений:

protected override void OnStartup(StartupEventArgs e) 
{ 
    base.OnStartup(e); 

    // Set application startup culture based on config settings 
    string culture = ConfigurationManager.AppSettings["Culture"]; 
    SetCulture(culture); 
    FrameworkElement.LanguageProperty.OverrideMetadata(typeof(FrameworkElement), 
    new FrameworkPropertyMetadata(XmlLanguage.GetLanguage(CultureInfo.CurrentCulture.IetfLanguageTag)));    
} 

 Смежные вопросы

  • Нет связанных вопросов^_^