Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-core/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C#Windows窗体继承_C#_Inheritance - Fatal编程技术网

C#Windows窗体继承

C#Windows窗体继承,c#,inheritance,C#,Inheritance,我正在创建一个Windows窗体应用程序,我希望有一个基类,该基类具有操作窗体输入的基本功能,然后从该类继承来创建3个派生类,这些派生类都略有不同 有没有可能让基类不是一个实际的形式,而是有一个从未实例化过的抽象类,但有一对我希望所有派生类都拥有的函数 我怎样才能在C#中做到这一点 谢谢由于VS Designer的原因,这样做是可能的,但不方便。那么,您认为什么是最好的解决方案呢?首先,您应该问问自己是否确实需要继承。听起来你需要的是合成,而不是继承。换句话说,为什么不将功能放在一个单独的类中,

我正在创建一个Windows窗体应用程序,我希望有一个基类,该基类具有操作窗体输入的基本功能,然后从该类继承来创建3个派生类,这些派生类都略有不同

有没有可能让基类不是一个实际的形式,而是有一个从未实例化过的抽象类,但有一对我希望所有派生类都拥有的函数

我怎样才能在C#中做到这一点


谢谢

由于VS Designer的原因,这样做是可能的,但不方便。那么,您认为什么是最好的解决方案呢?首先,您应该问问自己是否确实需要继承。听起来你需要的是合成,而不是继承。换句话说,为什么不将功能放在一个单独的类中,并给每个表单一个该类类型的属性呢?因此您有一些类
x
,还有三个类,
a
b
c
,它们需要
x
。现在问问自己,对于每个类,“是
a
x
,还是
a
有一个
x
?”到目前为止,您描述的一切听起来都像是后者,这意味着在这种情况下不应该使用继承。@MattHintzke如果您可以编辑您的问题,以包含有关您正在做什么的更多细节,这将非常有用。