C# 尝试的本地化在Windows窗体应用程序上始终显示英语
我正在尝试设置一个Windows窗体登录屏幕,该屏幕使用用户的语言为类设置德语或英语。我已经在我的项目属性中设置了我的C# 尝试的本地化在Windows窗体应用程序上始终显示英语,c#,winforms,localization,C#,Winforms,Localization,我正在尝试设置一个Windows窗体登录屏幕,该屏幕使用用户的语言为类设置德语或英语。我已经在我的项目属性中设置了我的.resx文件,但是我不明白为什么表单总是以英语显示 我查看了和,在那里我找到了有关设置Strings.resx和Strings.de.resx文件的信息,但是当我将UI语言设置为德语时,文本总是以英语显示。在LoginForm属性中,我将Localizable设置为True 由于我希望应用程序以正确的语言加载屏幕,我将所有代码都放在加载事件中: private
.resx
文件,但是我不明白为什么表单总是以英语显示
我查看了和,在那里我找到了有关设置Strings.resx
和Strings.de.resx
文件的信息,但是当我将UI语言设置为德语时,文本总是以英语显示。在LoginForm属性中,我将Localizable
设置为True
由于我希望应用程序以正确的语言加载屏幕,我将所有代码都放在加载事件中:
private void LoginForm_Load(object sender, EventArgs e)
{
// Check system language
CultureInfo Language = CultureInfo.CurrentUICulture;
// Check if system language is set to German or English, and display
// login screen elements as appropriate
if (Language.Name.ToString() == "Deutsch")
{
LoginLabel.Text = Properties.Strings.LoginLabel;
UserLabel.Text = Properties.Strings.UserLabel;
PasswordLabel.Text = Properties.Strings.PasswordLabel;
LoginButton.Text = Properties.Strings.LoginButton;
ExitButton.Text = Properties.Strings.ExitButton;
}
}
我知道我可能错过了一些简单的东西,但我想不出来。如果需要,我可以手动将文本字段设置为德语版本,但如果可能的话,我宁愿将其在
.resx
文件中分开。将语言更改为字符串,并删除If
循环,这样设置后它现在以德语显示