我有一个本地化的WPF应用程序。
当我从ControlPanel将Format设置为印地语(印度)时 - >地区 - >格式化,在我的WPF应用程序启动时,我的WPF应用程序中的代码行不是读取CultureInfo.CurrentCulture(hi-IN)而是使用en-US。
Application.Current.MainWindow = new MainWindow();
Application.Current.MainWindow.Show();
因此,我的WPF应用程序未使用Resources.resx文件中的问候语消息。相反,它使用来自Resources.en.resx
的问候消息我在CultureInfo.CurrentCulture
中获得了适当的价值。
知道为什么上面的代码行没有选择合适的值?
答案 0 :(得分:1)
ControlPanel-> Region->格式设置不适用于.resx文件。您可以在ControlPanel-> Region->语言中指定默认语言。
或者,您可以在App
类(App.xaml.cs)中指定资源的默认语言:
public partial class App : Application
{
protected override void OnStartup(StartupEventArgs e)
{
base.OnStartup(e);
Resources.Culture = System.Threading.Thread.CurrentThread.CurrentCulture;
}
}