【发布时间】:2011-11-30 16:27:34
【问题描述】:
所以我想在我的网站中的几个控件的 onclick 事件中添加一些 javascript。它们都是 Button、LinkButton 和 ImageButton 类。
我创建了一个名为 CustomLinkButton 的类,它继承自 LinkButton 并且运行良好。它利用 OnLoad 方法并具有一些使用 ViewState 的属性。伟大的。现在我想将该代码用于 Button 和 ImageButton。
问题是,这三个类都继承自 System.Web.UI.WebControls.WebControl,它缺少所有这三个控件共有的一些重要方法和属性。
那该怎么办?在所有类中重复代码意味着可维护性差。我尝试过创建另一个类并在那里编写方法,但我遇到了同样的问题 - 我不能有一个接受所有三种类型的方法,但我不能编写一个具有多个约束的泛型方法。
想法?还是我只需要用重复的代码编写三个类?我已经进行了大量搜索,但找不到解决方案。这可能适用于很多情况,因此我问。谢谢各位。
编辑:他们共享的相关属性的示例是 CausesValidation 和 ValidationGroup。
【问题讨论】:
标签: c# asp.net class multiple-inheritance