我想要一个安全控件,但也想要扩展 asp.net 框架提供的现有按钮或文本框。所以我的类 dec 看起来像:
public class MyTextBox : System.Web.UI.WebControls.TextBox
我正在考虑类似的策略模式,但不确定如何将 ISecureControl 传递给 ctor 或者可能是 init 方法之类的?
我可能正在回答我自己的问题。我想我可能能够覆盖 OnInit 或 OnPreInit 或其他东西并在那里创建并传递它,但不确定是否有办法在创建时以某种方式直接传递它?
override OnInit()
{
secureControl = new MySecureControl();
}
override OnRender()
{
if(secureControl.CanRender)
base.OnRender();
}
有没有更好的办法?还是我在这里解决我自己的问题...