如何取消表单继承

本文关键字:表单 继承 取消 何取消 | 更新日期: 2023-09-27 18:08:33

我有几个表单继承自另一个名为"BaseForm"的表单。

现在,我想取消这个关系。

我该怎么做呢?

我试图删除我在表单中看到的唯一声明:

public partial class Form1 : Shuki.BaseForm
{
/////
}

删除后,它看起来像这样:

public partial class Form1 
{
/////
}

但是当我编译代码时,构建失败,显示的错误是:

Form1.Dispose(bool)':没有找到合适的方法来覆盖。

我错过了什么

如何取消表单继承

正如其他人已经在评论中所说的那样,与其简单地删除基类,不如将其更改为Form。所有的WinForm类都必须继承Form

换句话说,改变这个:

public partial class Form1 : Shuki.BaseForm
{
/////
}

:

public partial class Form1 : Form
{
/////
}

它抱怨Dispose的原因是因为在代码的某个地方(很可能在Designer文件的其他部分类中),它将Dispose方法声明为override。当然,重写方法是无效的,除非您有一个基类首先声明了该方法。当您删除基类时,这使得Dispose方法的覆盖不再有效。

我认为你必须使用

public sealed class {
}