我正在开发支持两种语言阿拉伯语和英语的Windows应用程序。我想在运行时更改表单的UI(标签)。用户最初选择的哪种语言应该以该语言显示。为此我设置了以下键
如果用户选择英语
Thread.CurrentThread.CurrentUICulture = new System.Globalization.CultureInfo("en-GB");"
如果用户选择阿拉伯语
Thread.CurrentThread.CurrentUICulture = new System.Globalization.CultureInfo("en-Ar");
当我在visual studio中运行应用程序时,这很好用。所有表格都根据当前选择的UI文化进行。
但是在机器上安装此应用程序的MSI之后,根据CurrentUICulture资源文件,它没有显示表单的标签值。即使所选语言为阿拉伯语,它也始终以英文显示标签。
答案 0 :(得分:0)
我通过执行以下步骤找到了此查询的解决方案。 - 实际上在创建应用程序的安装程序时,它会映射资源dll文件夹,因此只在部署项目中添加“project.resources.dll”是不够的。 - 在Application文件夹下添加一个文件夹(名称与bin-> dubug下包含resource.dll的文件夹名称相同),然后在其下添加“project.resources.dll”。 - 它将解决问题 - >如果所选语言是阿拉伯语,所有标签都将以阿拉伯语出现