Импорт форм Windows (С#), Visual Studio 2012
пытается добавить существующую форму Windows в проект VS2012 WinForm, я иду "Добавить/Существующий элемент...", а затем импортирует: MyForm.cs, MyForm.designer.cs, MyForm.resx
Это использовалось для работы в более ранних версиях VS. (Возможно, мне придется корректировать пространства имен.)
В VS2012 MyForm.designer.cs и MyForm.resx теперь не связаны с Формой для целей Дизайнера; то есть они отображаются как отдельные записи файлов в обозревателе решений, а не вложенные под MyForm. Двойной щелчок MyForm показывает пустую форму (без элементов управления) без сообщений об ошибках. Проект компилируется и работает нормально.
Однако, когда я перетаскиваю те же файлы в проект (настраиваю/переименовываю пространство имен), файлы формы правильно связаны друг с другом, и конструктор открывает форму в порядке.
Пока у меня есть решение, может кто-то подчеркнуть, какая разница между этими подходами, в чем смысл добавления параметра "Добавить/существующий элемент", если он не работает, и что происходит на самом деле при перетаскивании файлов? Какой файл (.csproj возможно?) Отвечает за присоединение файлов формы? Поскольку он работает в обоих случаях в более ранних версиях VS, я могу предположить, что это ошибка?
Спасибо.
Ответы
Ответ 1
Попытался воспроизвести вашу проблему - без успеха.
Предположим, что вы хотите импортировать форму под названием YourFormName
. Затем вы должны добавить в проект YourFormName.cs
- остальные части (YourFormName.designer.cs
и YourFormName.resx
) будут добавлены автоматически.
Мои шаги:
- Создайте проект WinForms (в моем случае .Net Framework - 4) в VS2012 (11.0.05727.1 если есть вопросы)
- Щелкните правой кнопкой мыши проекты → Добавить → Существующий элемент...
- Найти любой WinForm с элементами управления (я добавил две формы, созданные в VS2010 для .NET framework 4 и 3.5)
- С некоторой задержкой (около 30-40 секунд), для обоих случаев "Дизайнер" работал как ожидалось и загружал все существующие элементы управления /codebehind
Ответ 2
Просто включите файл cs и просто wait
для mintue. Других файлов не требуется добавлять.
Это будет работать.
перейти к project
> добавить existing item
выберите файл формы myform.cs
и нажмите кнопку add
. Это импортирует файл в ваш проект.