大家好,今天我们来实现一个自定义的控件,之前我们已经知道了,要开发自定义的控件一般继承三 个基类:Control,WebControl,还有一个就是今天要说的CompositeControl。
大家也许还记得,之前的开发的控件基本上都是我们自己从头到尾的写一些控件的标记,如 <table.....>之类的,而且还有一个大的问题:我们为了使得我们的控件更加的好用,专业,我们 还实现了大量的接口,和自己写很多的事件.这样开发控件的时间就加大了。其实我们可以利用ASP.NET中 已经有的控件,经过我们包装,实现我们自定义控件。大家可能认为这和用户控件差不多的,但是继承 CompositeConytol的控件的自定义控件的灵活性和复用行更好,而且还还添加样式。
还一个更加重要的就是我们不必要实现接口,比如,引发回传的IPostBackEventHandler接口,接受数 据的IPostBackDataHandler接口。大家还记得我们之前开发控件中的的那个Button还要申明name为 this.UniqueID ,现在我们都不需要了,因为我们要包装的那些服务器的控件,如TextBox,他们都已经 实现了这些。
本章准备开发一个大家都熟知的Login登录控件。
大家先看看效果:
其实分析起来,这个控件是由一些已有的控件组合而成的,分别是:
两个Label,两个TextBox,和一个Button
时间: 2024-10-26 09:53:46