未处理的异常错误缺少resx

时间:2013-05-24 13:48:29

标签: c# forms resources

我的表单出现问题,会产生错误。如果我删除它们,它工作正常,但问题变得有点儿。

this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")))
this.pictureBox1.Image = ((System.Drawing.Image)
    (resources.GetObject("pictureBox1.Image")));
System.ComponentModel.ComponentResourceManager resources = 
    new System.ComponentModel.ComponentResourceManager(typeof(LYNXAntiCheatForm));

错误消息:

mscorlib.dll中出现未处理的“System.Resources.MissingManifestResourceException”类型异常

其他信息:

无法找到适合指定文化或中性文化的任何资源。确保在编译时将“LYNXAntiCheat.LYNXAntiCheatForm.resources”正确嵌入或链接到程序集“LYNXAntiCheatForm”中,或者所有所需的附属程序集都是可加载和完全签名的。

问题:

如何在不删除这三行代码的情况下真正解决此问题。我确实尝试添加一个名为“LYNXAntiCheat”的resx文件

我使用Visual Studio 2012 Express编译此C#项目。

2 个答案:

答案 0 :(得分:5)

我在this.Icon行上遇到了同样的错误,因为我在CS文件中的表单部分类之前放了另一个类。我经常在测试新抽象时这样做而忘记你不允许这样做。

如果您在带有表单的文件中有多个类,请将该类移至文件末尾或完全移至另一个文件。

答案 1 :(得分:0)

您在编写示例时按顺序使用代码吗?

因为您必须在首次使用前初始化资源 尝试在前两行之前写上最后一行。

如果您打开表单“解决方案资源管理器”树,您会在表单resx文件下看到?
就像在这个“BugReport.cs”表单的例子中,我看到“BugReport.resx”:

enter image description here

如果是,那么您可能从资源文件中删除了图标文件。如果你的resx文件在那里,你需要打开它(从解决方案资源管理器双击)并检查资源文件的“图标”部分是否包含$this.Icon。如果资源文件的“图像”部分包含pictureBox1.Image。如果没有,那么您可以手动添加此资源并将其重命名为此名称。