代码改变世界

AjaxControlToolkit常用元数据和基类

2007-06-18 13:56  Clingingboy  阅读(1436)  评论(0编辑  收藏  举报

AjaxControlToolkit 十大常用元数据

  

1.       RequiredProperty  必须声明的属性,不然会报错

2.  ClientScriptResource 提供客户端脚本资源, 自动引用GetScriptDescriptors方法将会获取其资源文件,我们无需重写此方法

3.       ClientCssResource 提供css样式资源,自动引用

4.       RequiredScript 必要的脚本资源,由于一些客户端脚本存在着依赖的关系,所以有时候需要引用别的脚本,做法则是定义一个静态类,然后在静态类中标识ClientScriptResource

5.       ExtenderControlProperty 标识为客户端属性

6.       ClientPropertyName 同上,标识为客户端属性,不同的是其可以自定义客户端属性名称

7.  ElementReference  标识为此属性为元素ID(即获取属性为对象),DragPanelExtender DragHandleID属性,获取的非PanelID,而是其对象,($get(“panel”)

8.       ExtenderControlEvent 标识为客户端事件(注意不要与ExtenderControlProperty同时使用,不然会默认标识为ExtenderControlProperty)

9.       ExtenderControlMethod 标识方法为客户端回调发方法,必须实现IcallbackEventHandler接口

10.   TargetControlType 此为asp.net ajax提供的元数据,标识Extender控件扩展的控件类型

 

以上大多数属性设置的作用都是为了呈现,只为了方便调用脚本.真正的实现还是需要脚本

以上元数据帮我们省了很多功夫,元数据也再次发挥了其作用,一个很好用的东西

 

 

 

 

AjaxControlToolkit 三大基类

 

Asp.net ajax提供了IextenderControlIscriptControl接口,两个接口都可以实现扩展,只是方式不同,第一个需要与原有控件搭配使用,第二个借口则是直接继承自原有控件进行扩展.

同时Asp.net ajax提供了ExtenderControlScriptControl抽象类.这个做法就如同asp.net1.1中复合控件需要实现InamingContainer接口,asp.net2.0中则添加了CompositeControl提供了便利,但还是需要实现接口. AjaxControlToolkit对两个类进行再扩展,其提供了ExtenderControlBaseScriptControlBase.其巧妙了运用了.net元数据的特性,使得后端控件的设置额外的方便,不需要我们再实现IextenderControl等接口,其各自提供了ScriptPath属性,可以引用外部脚本文件,其还提供了一个IclientStateManager接口,目的就是为了保存前台js操作以后的数据,然后可以回传给后台, ExtenderControl并没有实现IclientStateManager接口,但也提供了ClientState属性. ScriptControl还实现了ICallbackEventHandler接口,可以实现客户端回调.

另外第三个类则是ScriptUserControl,其继承了UserControl,实现的内容与ScriptControl相似,用户控件可以继承此类进行扩展.以上的功能大多需要脚本进行配合才可以灵活的使用