我在我的应用程序中使用Frame
对象来浏览我的所有屏幕(user controls
)。
我的语言页面可以从几个不同的位置访问。选择新语言后,我使用Frame.GoBack()
方法返回上一屏幕。但是,当我返回时,屏幕仍然是以前选择的语言。之后导航到的所有页面都使用正确的语言。
我们通过设置线程Culture
来设置语言,应用程序会自动从正确的资源文件中加载翻译。
如何强制Frame使用新文化重新加载用户控件的资源,或者确定我之前使用的页面类型并再次加载该用户控件?
我查看了这篇文章,但我无法使用他们解释的内容。因为没有允许实例化前一个对象的公共属性。 WPF/Silverlight NavigationService backstack
我使用以下内容在XAML中设置页面的资源:"{x:Static resx:Translations.HelloWorld}"
然后使用以下设置文化:Thread.CurrentUICulture = cultureInfo
& Thread.CurrentCulture = cultureInfo