2016-11-09 64 views
0

我想知道它是否有可能加載資源文件?Windows Phone 8.1如何加載資源文件RESW

我是說。我目前有2個文件夾是fr-FR end en-US。

在每個文件夾中,我有一個Resources.resw。當我在手機設置中更改語言時,這兩個文件可以正常工作。如果手機在FR或美國,它將加載正確的Resources.resw。

但我想知道如果我可以改變它在應用程序內? 當用戶選擇fr/en時加載正確的文件。

enter image description here

謝謝您的幫助。

回答

2

我們可以使用ApplicationLanguages.PrimaryLanguageOverride在運行時改變語言沒有重新啓動手機應用:

private async void ChangeLagButton_Click(object sender, RoutedEventArgs e) 
    { 
     var culture = new System.Globalization.CultureInfo("fr-FR"); 
     Windows.Globalization.ApplicationLanguages.PrimaryLanguageOverride = culture.Name; 
     Windows.ApplicationModel.Resources.Core.ResourceContext.GetForCurrentView().Reset(); 
     Windows.ApplicationModel.Resources.Core.ResourceContext.GetForViewIndependentUse().Reset(); 
     await Task.Delay(100); 
     //To refresh the UI without restart the phone 
     this.Frame.Navigate(this.GetType());   
    } 
+0

爲什麼等待Task.Delay(100)? –

+0

我使用Page.Frame.Navigate(typeOf(MyPage));頁面重新加載,但語言是相同的,我必須重新運行應用程序,使其工作 –

+0

這是Task.Deplay(100)的功能,如果你不使用它,使用Frame.Navigate爲第一次將不起作用 –