龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > web编程 > Javascript编程 >

创建定制的ASP.NET AJAX非可视化客户端组件(1)(3)

时间:2013-03-06 14:58来源:未知 作者:admin 点击:
分享到:
上面的代码首先通过调用Type.registerNamespace方法实现注册Demo命名空间。ASP.NET AJAX开发小组建议,最好在构造器中声明和初始化所有的private域,例如在这个示

上面的代码首先通过调用Type.registerNamespace方法实现注册Demo命名空间。ASP.NET AJAX开发小组建议,最好在构造器中声明和初始化所有的private域,例如在这个示例中初始化了interval域。接下来,构造器调用继承的initializeBase方法,以便使用基类Component中的方法。然后,被初始化的基类使用客户端应用程序把此Demo.Timer实例注册为一个可释放的对象。

在这个prototype中,声明并初始化private域(例如interval)。在此,这个prototype定义了两个public属性:interval和enabled;还定义了针对每一个属性的get和set访问器方法。在每一个public属性的set访问器方法中,通过调用propertyChanged方法激活一个propertyChanged事件。这样以来,每次改变此属性时,页面开发者都会得到通知。

上面的add_tick和remove_tick方法支持页面开发者添加和删除监听tick事件的委托处理器。这些方法通过该组件的事件处理器集合来添加或删除指定的处理器。你可以通过组件的Sys.EventHandlerList对象来添加和删除你的组件类中的委托处理器。EventHandlerList对象包含一个该组件的事件处理器的集合―通过继承的Sys.Component.events属性实现。在本示例中,该代码调用返回的EventHandlerList对象的Sys.EventHandlerList.addHandler和Sys.EventHandlerList.removeHandler方法,以便为了添加或删除指定的处理器。

这个Demo.Timer类重载了基类的dispose方法以便更新enabled属性并且向开发人员指示此组件已经被禁用。通过enabled属性的set访问器可以激发propertyChanged事件以便发送通知。然后,调用private型_stopTimer方法以停止激发tick事件。最后,调用基类中的dispose方法来支持应用程序释放掉该组件。

六、在Web页面中应用Demo.Timer组件

在一个页面中的客户端组件实例可以托管给一个服务器控件或由Web页面中的客户端脚本所使用。现在,我们来讨论如何创建一个组件实例―通过在Web页面中使用客户端脚本的方式。

启动Visual Studio 2005,选择“文件→新建网站…”,然后选择“ASP.NET AJAX-Enabled Web Site”模板,命名工程为“NoVisComponentTest”,并选择C#作为编程语言,最后点击OK。

把文件名Default.aspx更改为DemoTimer.aspx。然后,把该文件源码内容修改为:

<%@ Page Language="C#" %>
<%@ Register Assembly="System.Web.Extensions,

Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"
  Namespace="System.Web.UI" TagPrefix="asp" %>

"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
http://www.w3.org/1999/xhtml">

    ASP.NET AJAX客户端非可视化组件编程测试


   


       
           

           


   【ASP.NET AJAX客户端非可视化组件编程测试】

           


           
               
                   
               

  
  定时器开始计数:


                0

       

精彩图集

赞助商链接