多语言窗口形式
本文关键字:窗口 语言 | 更新日期: 2023-09-27 18:15:12
我正在开发支持两种语言阿拉伯语和英语的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资源文件,它没有显示表单的标签值。即使选择的语言是阿拉伯语,它也总是只显示英文的标签。
我通过以下步骤找到了这个查询的解决方案。-实际上,在创建应用程序的安装程序时,它映射了资源dll文件夹,因此仅在部署项目中添加"project.resources.dll"是不够的。-在Application文件夹下添加一个文件夹(名称与bin->dubug下包含resource.dll的文件夹名称相同),然后在其下添加"project.resources.dll"。如果选择的语言是阿拉伯语,那么所有的标签都会显示阿拉伯语