首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >异常本地化MenuStrip控件

异常本地化MenuStrip控件
EN

Stack Overflow用户
提问于 2015-04-02 11:39:06
回答 1查看 283关注 0票数 0

我有一个MenuStrip控件,输入了几种语言的所有翻译。当我试图动态地更改区域性时,所有控件都在更改语言,而MenuStrip除外。下面是我专门用于MenuStrip的代码:

代码语言:javascript
复制
    protected ComponentResourceManager res2;

    private void signOutToolStripMenuItem_Click(object sender, EventArgs e)
    {
        LoginForm login = new LoginForm();
        if (login.ShowDialog() == DialogResult.OK)
        {
            //this is for other controls
            resManager = new ComponentResourceManager(this.GetType());
            this.ApplyResources(this, Thread.CurrentThread.CurrentCulture);

            //this is for MenuStrip
            res2 = new ComponentResourceManager(typeof(MenuStrip));
            this.ApplyResourcesToolStripMenuItem(Thread.CurrentThread.CurrentCulture);
        }

    }

    private void ApplyResourcesToolStripMenuItem(CultureInfo lang)
    {
        foreach (ToolStripItem m in this.menuStrip1.Items)
        {
            //resources.ApplyResources(m, m.Name, lang);
            if (m is ToolStripMenuItem)
            {
                string text = res2.GetString(m.Name + ".Text", lang); //Exception is thrown here
                if (text != null)
                    m.Text = text;
            }
        }
    }

我使用了来自这个论坛的另一个开发人员的代码示例,并做了一些小的修改。现在,当我在运行时更改区域性时,会得到以下异常:

'System.Resources.MissingManifestResourceException‘类型的未处理异常发生在mscorlib.dll中 其他信息:找不到适合指定区域性或中性区域性的任何资源。确保"System.Windows.Forms.MenuStrip.resources“在编译时正确嵌入或链接到程序集"System.Windows.Forms”中,或者确保所需的所有附属程序集都是可加载和完全签名的。

我已经检查了资源文件,所有的MenuStripItems都有所有的翻译/值.

我在网上找不到解决办法,所以非常感谢你的帮助。

提前感谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-04-02 12:18:45

因此,由于我是本地化的初学者,解决方案比我发布的要容易得多。也许这对其他初学者也有帮助。

因此,我删除了我的所有代码,这些代码实际上让人头疼,并将其替换为以下代码:

代码语言:javascript
复制
Thread.CurrentThread.CurrentUICulture = new CultureInfo(StaticValues.currentCulture);
this.Controls.Clear();
this.InitializeComponent();

而且很容易就成功了。是的,多亏了阿德里亚诺·雷佩蒂!

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29412043

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档