Asp.net服务器控件和组件开发(1)

用户控件:部署成文本文件
服务器控件:部署成类库

服务器控件都是直接或间接从System.Web.UI.Control类中派生
那么为什么要从Control类派生呢.
因为:
服务器控件(类)与ASP.NET网页框架相互作用并且参与到HTTP的请求和响应过程中需要大量的方法,而CONTROL类就是提供这些方法的基类,从该类中继承,从而能使你从大量的低层细节中解脱出来.

随.NET FRAME一同发布的ASP.NET中所有的控件都是继承于CONTROL类或是从Control类的某个派生类.当然我们开发的自定义的服务器控件也是直接或间接由Control类派生.

最经常的情况是我们自定义的服务器控件是从System.Web.UI.Control类或是从System.Web.UI.WebControls.WebControl派生.
如果你开发的控件需要表现对HTML样式的支持的话,你就得从WEBCONTROL类派生.(实际上WEBCONTROL类也是从CONTROL类派生而来的,它增加了对样式的支持,如:字体,高度,背景...)


上面我们说了Control类为我们提供了很多实现细节的方法,在这些方法里特别的提供了这样的2个功能:
    1.提供将服务器控件加入到控件树中的功能.
    2.Control类还实现了System.ComponentModel.Icomponent接口.(这个接口主要能使服务器控件成为可设计的组件)

使用VS2003 IDE编写一个简单的自定义的服务器控件

注意添加Using声明
   1. Using System.Web.UI(因为我们要从System.Web.UI.Control类派生)

   2. 指定这个控件的命名空间

   3. 指定要开发的这个服务器控件继承于哪个基类


注意:用命令行编译时不区分大小写

/t:指定被编译成的类型 library:表示被编译成类库
/r:指定参考的配件集(/r:System.dll /r:System.Web.dll

一个CS文件里面能写多个命名空间

添加引用的时候自动把.DLL文件拷到BIN文件夹下面了
如果直接拷到BIN而没有添加到引用,会出现不认识控件(生成控件错误)
(to be continue...)

你可能感兴趣的:(asp.net)