该项在“Resources”参数中多次指定。 “Resources”参数不支持重复项

在编译我的Visual Studio C#项目时,我收到以下错误:

The item "obj\Debug\SampleProject.Forms.MDIMain.resources" was specified more than once in the "Resources" parameter. Duplicate items are not supported by the "Resources" parameter.

但是我在互联网上搜索了很多,但没有一个解决方案适合我。

我试图删除表单并将其重新添加到项目中,但它对我不起作用。

我只有一个resx文件。

我正在使用VS 2010。

此外,我尝试了以下解决方案,但它不适合我:

  1. https://stackoverflow.com/a/7928191/2074603
  2. https://stackoverflow.com/a/10066009

简单!

  1. 右键单击您的项目,然后选择“卸载项目”

  2. 再次右键单击并“编辑your_project.csproj”

  3. 搜索错误消息中提到的重复文件并将其删除。

  4. 保存并关闭。

  5. 右键单击以选择“重新加载项目” 视图图像

我最近遇到了这个问题,我想我已经弄清楚了我的具体情况,所以也许它会对你有所帮助。

我曾使用Visual Studio IDE复制现有表单(我们称之为Form1 )。 我把它粘贴到同一个项目中(它作为Copy of Form1到达)

然后我将该新副本重命名为Form2

我花了一段时间,但最终我发现IDE已将Form1Form1 Copy of Form1重命名为Form2

文件名是正确的……只是里面的实际类被命名。

我手动将原始版本重命名为适当的类, ,它有效。

我有同样的错误,在我的情况下,我修复了这个问题,如下所示。

在此处输入图像描述

在突出显示的部分下面是另一个文件some_name_not_equal_to_main.resx,删除后,我的程序开始正常运行。

希望这对你有所帮助。

重命名文件后,重命名新创建的文件中的类和所有构造函数。 默认情况下,文件名更改,但其中的类名称不会更改。 需要也是如此。

我刚遇到同样的问题。 不确定是否具有确切的语义,但它与将多个文件维护为“Main”表单类的一部分有关。

在我的例子中,IDE让它进入它的头部,将表单初始化例程添加到一个不是“主”表单的部分类文件中。

这造成了两种“主要”forms和冲突。

只需查找添加的init函数并将其删除,以及相关的.resx文件,即可解决问题。

如果您已创建表单副本,请转到属性并更改复制表单的名称。

在大多数情况下,它会在您创建表单副本时发生。 当您创建表单的副本时,新表单与旧表单的名称相同。 它不是旧表格的名称改变了。

从这个例子:

我曾使用Visual Studio IDE复制现有表单(我们称之为Form1)。 我将它粘贴到同一个项目中(它作为Form1的副本到达)。 现在转到“Form1的复制”[]如果你已经重命名那么它就是那个名字]转到属性将名称更改为Form2(或者你想要的任何类名)

它应该工作。

另外,请记住,当您重命名类名时,代码中对类名的引用也可能会发生更改。 所以要小心。 我将在更改名称后建议重新编译代码,以便在更改引用时可以恢复原始类名(在本例中为Form1)。 然后,您可以开始使用新的类引用。