Подтвердить что ты не робот

Элемент был указан более одного раза в параметре "Ресурсы". Дублирующие элементы не поддерживаются параметром "Ресурсы"

При компиляции моего проекта Visual Studio С# я получаю следующую ошибку:

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.

Кроме того, я пробовал следующие решения, но это не сработало для меня:

4b9b3361

Ответ 1

У меня была эта проблема в последнее время, и я думаю, что разобрался в своей конкретной ситуации, так что, возможно, это поможет вам.

Я использовал IDE Visual Studio, чтобы скопировать существующую форму (позвоните ей Form1). Я вложил его в тот же проект (он появился как Copy of Form1)

Затем я переименовал новую копию в Form2.

Мне понадобилось некоторое время, но в итоге я обнаружил, что среда IDE переименовала оба Form1 и Copy of Form1 в Form2

Имена файлов были правильными... были названы только фактические классы внутри.

Я вручную переименовал оригинал обратно в соответствующий класс и вуаля, он работал.

Ответ 2

Легко!

  • Щелкните правой кнопкой мыши свой проект и выберите "Выгрузить проект"

  • Щелкните правой кнопкой мыши еще раз и "Edit your_project.csproj"

  • Найдите дубликаты файлов, упомянутых в сообщении об ошибке, и удалите их.

  • Сохранить и закрыть.

  • Щелкните правой кнопкой мыши, чтобы выбрать "Обновить проект" просмотреть изображение

Ответ 3

У меня была такая же ошибка, и в моем случае я исправил эту проблему, как показано ниже.

enter image description here

Вниз выделенной части был другой файл some_name_not_equal_to_main.resx, и после его удаления моя программа запускается нормально.

Надеюсь, это помогло вам.

Ответ 4

После переименования файла переименуйте класс и все конструкторы внутри нового созданного файла. По умолчанию имя файла изменяется, но имя классов внутри них не изменяется. Так что необходимо.

Ответ 5

У меня была такая же проблема. Не уверен в точной семантике, но он связан с поддержкой нескольких файлов как частичного класса формы.

В моем случае IDE попала в голову, чтобы добавить процедуры инициализации формы в один из файлов частичного класса, который не был "основной" формой.

Это создало две "основные" формы и конфликт.

Простое обнаружение добавленных функций init и их удаление вместе с ассоциированным файлом .resx устранили проблему.

Ответ 6

Если вы создали копию формы, перейдите к свойствам и измените имя скопированной формы.

В большинстве случаев это происходит при создании копии формы. Когда вы создаете копию формы, новая форма имеет то же имя, что и у старой. Изменено не имя старой формы.

В этом примере:

Я использовал IDE Visual Studio, чтобы скопировать существующую форму (позвоните на нее Form1). Я вложил его в тот же проект (он появился как Копия Формы1). Теперь перейдите к "Копии формы1" [] Если вы уже переименовали, то это будет имя] Перейти к свойствам Измените имя на Form2 (или любое другое имя класса)

и он должен работать.

Кроме того, помните, когда вы переименовываете имя класса, возможно, что ссылки на имя класса в коде также получат изменения. Поэтому будьте осторожны. Я предложу после смены имени перекомпилировать код, так что если ссылки будут изменены, вы можете вернуться к первоначальному имени класса (в этом случае Form1). Затем вы можете начать использовать новые ссылки на класс.