0

我有一个 winform、C# 应用程序,我想以本地化语言运行。目标 .Net 是 3.0,因为我的很多用户仍在使用 XP。该应用程序是系统托盘应用程序。

我已将所有字符串放入 Resources.resx 并使用 ResX 资源管理器为我需要的不同语言生成了 Resources.XX.resx 文件。

如果我使用代码将 CurrentUICulture 设置为另一种语言(即芬兰语):

Thread.CurrentThread.CurrentUICulture = new CultureInfo("fi-FI");

它按预期工作,并以芬兰语显示所有表格。

但是,如果我将应用程序安装在语言设置为芬兰语的机器上,所有的 winform 都会提供英语字符串(英语也是中性字符串)

我已经检查了表单的属性 localizable 是否设置为 true。


为什么当我对 CurrentUICulture 进行硬编码时它会起作用,而当我不硬编码时它却不起作用?

是否有其他方法可以检查 PC 的 UI 语言并更新应用程序 CurrentUICulture?

4

1 回答 1

1

在此处输入图像描述 您可以在表单上设置定位和语言,它将按窗口的语言显示

于 2016-09-23T04:00:50.640 回答