尝试将现有的Windows表单添加到VS2012 WinForm项目中,我选择“添加/现有项...”,然后导入:MyForm.cs、MyForm.designer.cs和MyForm.resx。
在早期版本的VS中,这种方法是可行的。(我可能需要调整名称空间。)
在VS2012中,为了设计师的目的,MyForm.designer.cs和MyForm.resx现在与该表单不再关联;即它们显示为解决方案资源管理器中的单独文件条目,而不是嵌套在MyForm下。双击MyForm会显示一个空表单(没有控件),没有错误消息。项目可以编译和运行。
但是,当我将相同的文件拖放到项目中(调整/重命名名称空间)时,表单文件会正确地关联在一起,设计器也可以正常打开表单。
虽然我现在有了一个解决方案,但有人能否说明这些方法之间的区别,添加/现有项选项的意义是什么,如果它不起作用,实际上正在发生什么?哪个文件(.csproj可能?)负责连接表单文件?因为在早期版本的VS中两种方法都有效,所以我可以认为这是一个错误吗?
谢谢。
在早期版本的VS中,这种方法是可行的。(我可能需要调整名称空间。)
在VS2012中,为了设计师的目的,MyForm.designer.cs和MyForm.resx现在与该表单不再关联;即它们显示为解决方案资源管理器中的单独文件条目,而不是嵌套在MyForm下。双击MyForm会显示一个空表单(没有控件),没有错误消息。项目可以编译和运行。
但是,当我将相同的文件拖放到项目中(调整/重命名名称空间)时,表单文件会正确地关联在一起,设计器也可以正常打开表单。
虽然我现在有了一个解决方案,但有人能否说明这些方法之间的区别,添加/现有项选项的意义是什么,如果它不起作用,实际上正在发生什么?哪个文件(.csproj可能?)负责连接表单文件?因为在早期版本的VS中两种方法都有效,所以我可以认为这是一个错误吗?
谢谢。
Form1.cs
只是一个通用的窗体名称,强调您应该仅添加.cs
文件-而不是.resx
或.designer.cs
。我会编辑我的答案以使其更清晰。 - Nogard