如何在Visual Studio中轻松复制Windows窗体?

Rob*_*cks 40 visual-studio winforms

如何在Visual Studio中轻松复制C#/ VB表单?如果我在解决方案资源管理器中复制并粘贴,它会在内部使用相同的类并搞砸了.你怎么做呢?

Jam*_*MLV 39

我通常在Windows资源管理器中复制文件,在记事本/写字板中打开它们,只需在顶部更改一个类名称.在项目中包含这些文件,你会很高兴.

  • C#/ VB.NET允许您像任何其他类一样继承表单,所以如果您只有一个通用模板... (2认同)
  • 工作就像一个魅力.... VS是一个PITA,他们应该让复制工作在VS,感谢解决方案!!!! (2认同)

Mic*_*key 21

  1. 复制并粘贴表单.
  2. 重命名粘贴的.cs格式以匹配新的表单类名称.这应该自动重命名其他相关文件.
  3. 打开.cs文件.更改类名称以及构造函数和析构函数的名称.
  4. 打开.Designer.cs文件并更改类名.

额外信用:

  1. 考虑将表单中的常用功能抽象为通用表单或控件.


Ash*_*Aim 10

从vb6开始我一直在使用另一种复制表单的方法。

  1. 文件菜单/SE - 将 CurrentForm.cs 保存为 - NewForm.cs
  2. 在“属性”窗口中将其名称更改为 NewForm。
  3. 在解决方案资源管理器中 - 添加现有项目 - CurrentForm.cs
  4. 通常在 MDI 表单中(引用 CurrentForm) - CurrentFormToolStripMenuItem_Click 事件 - 将引用更改回 CurrentForm(在步骤 1 中自动更改为 NewForm)。

欢迎评论。


小智 6

安全无问题的方法是制作表单模板您可以在同一个项目或任何其他项目中使用它.并且您可以非常轻松地添加它,例如添加新表单.这是一个如何制作模板的方法

1-从文件菜单中单击导出模板

2-选择模板类型(选择项目模板),然后单击下一步

3 - 检查您要为其制作模板的表单,然后单击下一步两次

4 - 重命名模板并(如果需要,请输入描述,选择图标图像,预览图像)

5次点击完成

现在,您可以添加新项目并在任何项目中选择模板

  • 这是我复制表格的首选方式,因为它消除了重命名所引起的任何回归错误。请注意,在VS2017中,“导出模板”命令已移至“项目”菜单。并且由于一个错误,当您选择自动导入新模板时,您将需要关闭并重新打开VS2017才能显示该模板。 (2认同)

Mus*_*sis 5

  1. 将子文件夹添加到您的项目中。
  2. 右键单击子文件夹,然后单击添加现有项目。
  3. 浏览到要复制的表单,然后选择其 .cs 文件。这将复制子文件夹中的原始表单(部分和 resx 以及全部)。该名称不会与原始名称冲突,因为子文件夹将包含在其命名空间中。
  4. 右键单击 .cs 文件,单击 Refactor | 重命名并输入新名称。这还将为您重命名部分和 resx。

我通常反对使用记事本或其他方式打开文件的方法,因为我一直认为像这样的常见任务应该有在 Visual Studio 中执行的内置方法。在这种情况下,有。

  • 这对我根本不起作用.....它保留了原始命名空间,然后在“资源”参数中多次指定了 xxxx.MainForm.resources 的奇怪错误。Resources 参数不支持重复项 (2认同)