我有一个winform,C#应用程序,我希望以本地化语言运行。目标.Net是3.0,因为我的很多用户仍在使用XP。 该应用程序是一个系统托盘应用程序。
我已将所有字符串放入Resources.resx,并使用ResX Resource Manager为我需要的不同语言生成了Resources.XX.resx文件。
如果我使用以下代码将CurrentUICulture设置为另一种语言(即芬兰语):
Thread.CurrentThread.CurrentUICulture = new CultureInfo("fi-FI");
它按预期工作,并以芬兰语显示所有表格。
但是如果我将应用程序安装在语言设置为芬兰语的机器上,所有winforms都会出现英文字符串(英文也是中性字符串)
我已检查过表单是否将localizable属性设置为true。
为什么它在我对CurrentUICulture进行硬编码时起作用,但在我不熟悉时却不起作用?
是否有其他方法可以检查PC的UI语言并更新应用程序CurrentUICulture?