设置语言不适用于已安装的应用程序

时间:2014-03-06 04:20:45

标签: c# winforms

C#WinForm应用程序使用frmMain拥有的两个resx文件在frmMain上使用双语。

从注册表中检索信息,然后决定使用哪种语言。

在IDE中运行,但frmMain在已安装的应用程序中以英语显示。

正在访问线程文化设置代码。 FrmMain resx文件存在于安装目录中。 安装在具有管理员权限的开发计算机上完成。 任何可能导致这种情况的想法都会受到赞赏。

 public frmMain(string sApplication):base(sApplication)
    {

        const string french = "SupFrench";

        string culture = ClsLang.PrimaryLangIpf;
        clsLogger.WriteInfoLog("PrimaryLangIpf is " + culture);
        if (culture==french
        {
            clsLogger.WriteInfoLog("Setting Culture to French");//**WE GET HERE**
            System.Threading.Thread.CurrentThread.CurrentUICulture = 
new System.Globalization.CultureInfo("fr-FR", false);
            System.Threading.Thread.CurrentThread.CurrentCulture = 
new System.Globalization.CultureInfo("fr-FR", false);
        }


        InitializeComponent();

1 个答案:

答案 0 :(得分:2)

您不需要将FrmMain resx文件放在安装文件夹中,而是需要包含* .resources.dll文件的fr-FR子文件夹。
另见:Create a Localized Version of a Resource File