0

我有 2 个自定义服务器控件类。一个继承自 TextBox,另一个继承自 Label。

这两个类都包含相当多的通用代码(各种属性和属性呈现逻辑),但它们也确实包含一些不同的代码。

理想情况下,公共代码将包含在抽象类中,并且每个自定义控件都将从该抽象类继承。这当然是不可能的,因为它们已经从各自的基类继承,而 c# 不支持多重继承。如何解决代码重复问题?

4

1 回答 1

0

这取决于确切的功能。如果他们没有办法从同一个地方继承(似乎是这种情况),那么最好的办法是拥有一个包含通用功能的第三个类,并以某种方式包含它,或者通过拥有它的实例在您的控件类中或仅在其上调用静态方法。我会选择哪一个可能取决于您的代码是什么,并且希望相对明显。

于 2012-10-17T14:56:27.657 回答