程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> ASP.NET >> ASP.NET基礎 >> 如何創建一個AJAXControlToolKit的擴展控件

如何創建一個AJAXControlToolKit的擴展控件

編輯:ASP.NET基礎

微軟的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,

 這裡不貼代碼了。

在前台頁面使用這個控件:

 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved