在多语言应用程序上使用ResourceManager和CultureInfo

时间:2016-10-02 20:32:08

标签: c# vb.net

编辑:通过更改"学生助理解决.Lang.langres"到" Student_Assistant.Lang.langres"

我知道有很多关于此的教程,但我经历了很多,并且我一直得到同样的错误:" MissingManifestException"与描述'无法找到适合指定文化或中性文化的任何资源。'

资源管理器加载:

Assembly a = Assembly.Load("Student Assistant");
resManager = new ResourceManager("Student Assistant.Lang.langres", a);
switchLanguage();
//Loads all text
LoadTexts();

切换语言:根据选择的内容更改语言。

private void switchLanguage() {
        if (spanishToolStripMenuItem.Checked) {
            culInfo = new CultureInfo("en-US");
        } else {
            culInfo = new CultureInfo("es-ES");
        }
}

加载文本:只需加载文本,用于检查字符串是否已加载。

private void LoadTexts() {
    this.calendar.Text = resManager.GetString("tabcalendar");
}

如图所示,错误发生在第91行,当检查resManager时,其中的ResourceSets属性显示为Count = 0.

这是解决方案资源管理器的额外图片,因为它可能很有用: Solution Explorer

最后一件值得一提的是,这是在Google云端硬盘文件夹中,但我怀疑它有什么可做的。

0 个答案:

没有答案