我正在创建一组 Web 用户控件,它们将共享一个公共基类。基础将始终包含一个 WebControl(文本框、DropDownList、CheckBoxList、RadioButtonList、ListBox 等)和一个RequiredFieldValidator。一切都很好,除了我的抽象 InputControl 属性(定义为 WebControl 类型)似乎没有我希望它们都具有的 AutoPostBack 属性(我认为这是因为并非所有 WebControl 都支持 AutoPostBack)。我很想把这个功能完全放在基类中,而不必在每个孩子中定义它。它看起来像:
public abstract WebControl InputControl { get; set; }
public bool AutoPostBack {
get { return InputControl.AutoPostBack; }
set { InputControl.AutoPostBack = value; }
}
但这显然行不通,因为 AutoPostBack 不是 WebControl 的属性。我是否可以指定另一个接口来支持这一点,或者我需要创建自己的接口吗?