c# - 继承Form,没有.Designer.cs

标签 c# .net winforms visual-studio-2010

当我从 Form 或自定义 Form 继承时,我并不总是获得 a.Designer.cs 文件。如果我随后查看该表单并双击它,InitializeComponent() 方法将出现在我的派生类中。我将如何强制创建一个 Designer.cs 文件,什么可能导致它不创建?

我发现并不是我的所有表单都会出现这种情况,但不确定是什么原因造成的......?

编辑:

  1. 通过右键单击解决方案创建新项目 > 添加 > 新建项目 > Windows 窗体应用程序
  2. 右键单击项目 > 添加 > 类 > “FormA.cs”
  3. edit class: "public class FormA : Form"=> 仍然只是一个类
  4. 添加方法:public FormA(){} => 解决方案资源管理器显示一个表单图标,但没有子文件
  5. 右键单击 > View Designer => 显示表单
  6. 双击表单 => 在 FormA.cs 中生成一个 FormA_Load 方法和 InitializeComponent 方法,并生成一个 FormA.resx 文件。但是没有 Designer.cs。

最佳答案

right click project > Add > Class > "FormA.cs"

这就是问题所在。设计器不添加 .Designer.cs 文件。设计师使用已经可用的文件。

如果您创建一个新表单,它默认会有一个.Designer.cs 文件。然后您可以更改基类,它会保留 .Designer.cs 文件。

如果您创建一个新类,它将没有.Designer.cs 文件。设计师不会为你创造一个;它实际上并不需要它。

关于c# - 继承Form,没有.Designer.cs,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14769351/

相关文章:

c# - 从 Visual Studio 扩展访问当前的 Microsoft 帐户

c# - 使用 Dapper 映射 DBNull 时可以抛出异常吗?

c# - 在设计器中打开自定义用户控件时,Visual Studio Professional 15.9.2 崩溃

c# - 单声道高分辨率计时器(在 Linux 上)

c# - 如何访问列表框内的复选框?

c# - 如何反转 LINQ to SQL 查询

c# - MD5CryptoServiceProvider FIPS 合规性

c# - 合并 Entity Framework 中的迁移条目

c# - 如何过滤 DataGridView?

winforms - 设置/缩放控件滚动条的宽度