|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
既然话题已经抄起,我打算今晚发篇博文再引导一下舆论方向,使它再火两天,抛砖引玉,而且赵劼先生一直在跟帖,使.NET阵营的我感到万分难得。我们在开辟自界说控件的时分,选择一个准确的基类,能够年夜年夜的延长我们的开辟工夫。那末要怎样准确的选择要承继的基类呢?我们能够来懂得一下自界说控件所选择基类的体例。
注重:这是仅仅是讲基础控件的基类选择,庞大的数据控件就不在此列了。
1,Control类
这个是类是一切自界说控件的基本类,一切的控件都是间接大概直接的承继了该类,这个类供应了控件的最基本与需要的属性。好比控件的ID,ClientID,UniqueID,Visible等我们罕见的属性。这个类还包括了控件性命周期的事务,以下:
publiceventEventHandlerDataBinding;
publiceventEventHandlerDisposed;
publiceventEventHandlerInit;
publiceventEventHandlerLoad;
publiceventEventHandlerPreRender;
publiceventEventHandlerUnload;
承继Control类的长处是可扩大性最强,弱点就是短少对照多的我们经常使用的属性,好比结构,表面款式等属性,这些属性,假如要我们本人往完成,那就太贫苦了。以是,假如我们的控件对款式的请求对照高,能够思索承继下一个基类。
2,WebControl类
从这个类的名词我们能够看出来,这个类像是从.net过分到asp.net了,它就是从Control类承继过去专为web复杂控件开辟的基类。由于它承继了Control类,以是它具有Control类的一切不是公有的属性,办法,事务等。除此以外,它还扩大了良多把持控件款式的属性,好比BackColor,Font,Height,Width等属性。假如我们是要做一个复杂的Web控件,选择承继WebControl类是最符合不外的了。
3,CompositeControl类
假如我们的自界说控件是把多个复杂控件组分解一个控件,那末倡议选择CompositeControl类作为基类。由于思索到多个控件在剖析html时大概会形成ID反复的成绩,我们必需选择承继INamingContainer接口,而CompositeControl类就是承继自WebControl类与INamingContainer接口,以是它是组合控件的最合适的基类了。
4,现有控件
假如我们的自界说控件只是想在现有的控件下面增添一些功效,那末就能够思索承继自现有的控件。好比,我们想为微软的TextBox增添一个OldText属性,用来保留上一次的Text值,那末就能够思索承继自TextBox控件,如许我们所要写的代码十分少。由于别的的功效我们都从TextBox承继过去了,只必要扩大新的功效就能够了。Label,TextBox,Button,乃至是GridView控件,都能够作为新控件的基类,就看我们的实践需求了。
总结:WebControl类应当会是我们利用的最多的自界说控件基类,由于它扩大便利,又具有了Web控件的年夜部分的功效。有个问题想请教你一下,呵呵:)你觉得将来学什么方向比较好,我真是想不出来,知道的太少了,麻烦了。 |
|