如何创建一个AJAXControlToolKit的扩展控件

微软的AJAXControlToolKit提供了很容易的扩展方式,小弟我也是初学ajaxcontroltoolkit的扩展,所以这里举个例子,一起来学习,如果有什么好的建议和例子请提出来一起分享.

其实Microsoft的ajax官网给出的扩展说明已经很详细了,而且有个例子,严格来说确实有点简单,但是总结一下每个扩展控件大致需要注意如下几点:

1. 必须添加的dll: System.Web.dll , System.Web.Extensions.dll, System.Design.dll, System.Web.Extensions.Design.dll.最后也就是最重要的是AjaxControlToolKit这个dll。

2. 需要有一个类是继承ExtenderControlBase这个类的。

很多基本的规定和一些必须有的属性都在哪个ExtenderControlBase这个类中,比如每个控件都需要有的targerconrolID。

另外一点就是封装好WebResource和CliendtScriptResource。

如下代码所示:


代码如下:

using System.ComponentModel;
using System.Web.UI;
using System.Web.UI.WebControls;
using AjaxControlToolkit;

[assembly: System.Web.UI.WebResource("CustomExtenders.MyControlBehavior.js", "text/javascript")]

namespace CustomExtenders
{
[ClientScriptResource("CustomExtenders.MyControlBehavior", "CustomExtenders.MyControlBehavior.js")]
[TargetControlType(typeof(TextBox))]
public class MyControlExtender : ExtenderControlBase
{

[ExtenderControlProperty]
[DefaultValue("")]
public string MyProperty
{
get
{
return GetPropertyValue("MyProperty", "");
}
set
{
SetPropertyValue("MyProperty", value);
}
}
}
}

3.       用到的js文件:

上面这几步完成后就创建了一个自定义的控件Progress bar。

说了这么多理论没啥意思,大家需要的还是一个复杂的且好用的例子。下面就给出个例子:

先看看运行效果:

按照上面给出的理论我们一步一步实现吧:

1.       引用dll:

如上图所示我们添加了需要的几个dll在新的project中。在哪个assets包中是用到的css和images。

2.       创建派生类:

最重要的是封装webResource和ClientResource,封装代码如下:

,然后就是属性的添加,所有的属性添加如下所示:

3.       写javascript,

这里不贴代码了。

在前台页面使用这个控件:

(0)

相关推荐

  • AjaxControlToolKit 显示浏览者本地语言的方法

    1.首先要使用最新版的AjaxControlToolKit控件 2.在网页的Page标签中加入:UICulture="auto"设定 3.为ScriptManager加入以下的设定: EnableScriptGlobalization="true" EnableScriptLocalization="true" 4.看一下是不是已经OK了

  • 利用AjaxControlToolkit实现百度搜索时的下拉列表提示详细步骤

    AjaxControlToolkit是一组控件的集合,可以实现自动补充文本框,点击文本框弹出日历,加水印等Ajax效果,包含40多个控件,具体实现效果如:http://www.asp.net/ajaxLibrary/AjaxControlToolkitSampleSite/Default.aspx 像百度搜索一样,根据用户输入自动联想相关词汇,借助AjaxControlToolkit中的AutoCompleteExtender控件很简单的实现,实现效果如下: 详细步骤: 一:Vs中安装AjaxC

  • 如何创建一个AJAXControlToolKit的扩展控件

    微软的AJAXControlToolKit提供了很容易的扩展方式,小弟我也是初学ajaxcontroltoolkit的扩展,所以这里举个例子,一起来学习,如果有什么好的建议和例子请提出来一起分享. 其实Microsoft的ajax官网给出的扩展说明已经很详细了,而且有个例子,严格来说确实有点简单,但是总结一下每个扩展控件大致需要注意如下几点: 1. 必须添加的dll: System.Web.dll , System.Web.Extensions.dll, System.Design.dll, S

  • Android如何创建可拖动的图片控件

    本文实例为大家分享了Android创建可拖动图片控件的具体代码,供大家参考,具体内容如下 重载.自绘 1.从View派生一个控件类 ,构造函数中调用父类构造器. 2.重载其onDraw函数,在里面绘制图片.(和windows的MFC有种似曾相识的感觉,可能安卓借鉴了windows的模式吧) 消息处理 拖动图片的消息,主要是处理按下和移动两个消息,重载onTouchEvent.数学知识(平移):在ACTION_DOWN时记录下坐标点,在ACTION_MOVE时根据当前位置与按下时的位置算出平移量.

  • AjaxControlToolKit DropDownExtender(下拉扩展控件)使用方法

    下面大概吧使用方法介绍下(这里使用Lable控件为例子): 1. 给页面添加一个ScriptManager控件(使用方法还没有研究完全,研究完全了试验写点经验) 2.添加一个控制无刷新的UpdatePanel控件 (同上) 3.在UpdatePanel控件中 添加俩个 Label控件 一个用来添加DropDownExtender扩展,一个用来显示上个Label中取到的值,一个Panel控件 在Panel控件中添加若干个LinkButton控件 4.所有LinkButton公用一个Click事件,

  • AjaxControlToolKit CalendarExtender(日历扩展控件)的使用方法

    例子:只需要设置CalendarExtender的TargetControlID为需要显示日期的TextBox的ID即可以,textBox控件的readOnly属性设置为 false 主要代码: 复制代码 代码如下: <asp:ScriptManager ID="ScriptManager1" runat="server" EnableScriptGlobalization="True" EnableScriptLocalization=&

  • Android自定义控件之创建可复用的组合控件

    前面已学习了一种自定义控件的实现,是Andriod 自定义控件之音频条,还没学习的同学可以学习下,学习了的同学也要去温习下,一定要自己完全的掌握了,再继续学习,贪多嚼不烂可不是好的学习方法,我们争取学习了一种技术就会一种技术,而且不光看了就算了,最好的方法就是看完我自己再练习下,再扩展下,在原来的基础上在添加一些东西,比如,增加一些功能实现等等. 今天我们打算学习下另外一种自定义控件,就是创建可重复使用的组合控件,那么问题来了: 什么是可重复使用? 就是在应用中,可以在多个地方共同使用一套代码.

  • Android使用WindowManager制作一个可拖动的控件

    效果图如下 第一步:新建DragView继承RelativeLayout package com.rong.activity; import com.rong.test.R; import android.content.Context; import android.graphics.Color; import android.graphics.PixelFormat; import android.util.AttributeSet; import android.view.Gravity;

  • Ajax Control Toolkit 34个服务器端控件第1/2页

    1. Accordion [功能概述] Accordion可以让你设计多个panel 并且一次只显示一个Panel .在页面上的显示效果就像是使用了多个CollapsiblePanels只不过每一次只展开其中一个CollapsiblePanel.Accordion控件内部包含了若干个AccordionPane,每一个AccordionPane的template里包括了对其Header和Content的定义.我们可以在后台代码中通过SelectedIndex属性取得当前展开的哪一个Panel,还可

  • 在ASP.NET 2.0中操作数据之三十九:在DataList的编辑界面里添加验证控件

    导言 到目前为止的讨论编辑DataList的教程里,没有包含任何验证用户的输入,即使是用户非法输入- 遗漏了product的name或者负的price- 会导致异常.在前面一章里我们学习了如何在DataList的UpdateCommand事件处理中添加异常处理代码,以便在出现异常时捕捉它并显示友好的错误信息.然而理想的编辑界面应该包含验证控件,用来在第一时间里阻止用户输入一些非法数据. 本章我们将学习在DataList的EditItemTemplate里添加验证控件从而提供一个更安全的编辑界面,

  • 在ASP.NET 2.0中操作数据之三十二:数据控件的嵌套

    导言 除了静态HTML和数据绑定语法,template也可以包含Web控件和用户控件.这些控件的属性可以通过声明语法,数据绑定语法或在服务器端通过事件处理编程来设置. 通过将控件嵌入到template里,可以自定义界面,提升用户体验.例如,在在GridView控件中使用TemplateField 里,我们学习了如何通过在GridView的TemplateField里加一个Calendar控件来表示员工的雇佣日期.在给编辑和新增界面增加验证控件 和定制数据修改界面 里,我们学习了如何通过添加验证控

  • 在ASP.NET 2.0中操作数据之四十六:使用SqlDataSource控件检索数据

    导言 到目前为止,我们探讨的教程是由表现层,业务逻辑层和数据访问层构成的层次体系结构.数据访问层和业务逻辑层分别在教程第一和第二章提到.在Displaying Data With the ObjectDataSource 这篇教程里,我们探讨了怎样用ASP.NET 2.0的新控件--ObjectDataSource控件在表现层展示数据. 本教程到目前为止用这种层次结构来处理数据.然而绕过这种体系结构,通过直接把数据查询和业务逻辑放在Web页面上,也可以达到直接在ASP.NET页面上访问,插入,更

随机推荐