社区编辑申请
注册/登录
ASP.NET组件编程之事件编写浅析
开发 后端
ASP.NET组件编程中事件编写的方法是什么呢?本问就向你介绍两种ASP.NET组件编程的事件编写方法。

ASP.NET组件编程之事件编写是如何的呢?那么我们首先来看看ASP.NET组件的应用:

ASP.NET组件编程之组件代码:

  1. using System;   
  2. using System.Web.UI;   
  3. using System.Web.UI.WebControls;   
  4. using System.ComponentModel;   
  5.  
  6. namespace NSEventStudy   
  7. {   
  8. public delegate void TwoEventHandle(int flag);   
  9.  
  10. public class EventStudy : System.Web.UI.WebControls.WebControl   
  11. {   
  12.  
  13. ///////////////ASP.NET组件编程***种定义事件的方法////////////////////   
  14.  
  15. public event TwoEventHandle TwoEvent;   
  16.  
  17. public void Execute(int flag)   
  18. {   
  19. TwoEvent(flag);   
  20. }   
  21.  
  22. ////////////////ASP.NET组件编程第二种定义事件的方法////////////////////   
  23.  
  24. private static object _Process = new object();   
  25. public event TwoEventHandle ThreeEvent   
  26. {   
  27. add   
  28. {   
  29. Events.AddHandler(_Process,value);   
  30. }   
  31. remove   
  32. {   
  33. Events.RemoveHandler(_Process,value);   
  34. }   
  35. }   
  36.  
  37. public void InnerExecute(int flag)   
  38. {   
  39. TwoEventHandle handle = (TwoEventHandle)Events[_Process];   
  40. if(handle != null)   
  41. {   
  42. handle(flag);   
  43. }   
  44. else   
  45. {   
  46. this.RaiseBubbleEvent(this,null);   
  47. }   
  48. }   
  49.  
  50. protected override void Render(HtmlTextWriter writer)   
  51. {   
  52. base.Render (writer);   
  53. writer.WriteLine("我爱你,中国");   
  54. }   
  55.  
  56. }   
  57. }  

ASP.NET组件编程之事件实现测试程序:

  1. using System;   
  2. using System.Collections;   
  3. using System.ComponentModel;   
  4. using System.Data;   
  5. using System.Drawing;   
  6. using System.Web;   
  7. using System.Web.SessionState;   
  8. using System.Web.UI;   
  9. using System.Web.UI.WebControls;   
  10. using System.Web.UI.HtmlControls;   
  11.  
  12. namespace TestEvent   
  13. {   
  14. /// ﹤summary﹥   
  15. /// WebForm1 的摘要说明。   
  16. /// ﹤/summary﹥   
  17. public class WebForm1 : System.Web.UI.Page   
  18. {   
  19. protected System.Web.UI.WebControls.Button Button1;   
  20. protected NSEventStudy.EventStudy EventStudy1;   
  21.  
  22. private void Page_Load(object sender, System.EventArgs e)   
  23. {   
  24. // 在此处放置用户代码以初始化页面   
  25. }   
  26.  
  27. #region Web 窗体设计器生成的代码   
  28. override protected void OnInit(EventArgs e)   
  29. {   
  30. //   
  31. // CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。   
  32. //   
  33. InitializeComponent();   
  34. base.OnInit(e);   
  35. }   
  36.  
  37. /// ﹤summary﹥   
  38. /// 设计器支持所需的方法 - 不要使用代码编辑器修改   
  39. /// 此方法的内容。   
  40. /// ﹤/summary﹥   
  41. private void InitializeComponent()   
  42. {   
  43. this.EventStudy1.ThreeEvent += new NSEventStudy.TwoEventHandle(this.EventStudy1_ThreeEvent);   
  44. this.EventStudy1.TwoEvent += new NSEventStudy.TwoEventHandle(this.EventStudy1_TwoEvent);   
  45. this.Button1.Click += new System.EventHandler(this.Button1_Click);   
  46. this.Load += new System.EventHandler(this.Page_Load);   
  47.  
  48. }   
  49. #endregion   
  50.  
  51. private void EventStudy1_TwoEvent(int flag)   
  52. {   
  53. this.Response.Write("﹤script﹥javascript:alert('TwoEvent事件触发')﹤/script﹥");   
  54. }   
  55.  
  56. private void EventStudy1_ThreeEvent(int flag)   
  57. {   
  58. this.Response.Write("﹤script﹥javascript:alert('ThreeEvent事件触发')﹤/script﹥");   
  59. }   
  60.  
  61. private void Button1_Click(object sender, System.EventArgs e)   
  62. {   
  63. this.EventStudy1.Execute(6);   
  64. this.EventStudy1.InnerExecute(10);   
  65. }   
  66. }   

ASP.NET组件编程中事件的编写实现就向你介绍到这里,希望对你有所帮助。

【编辑推荐】

  1. ASP.NET服务器控件视图浅析
  2. ASP.NET组件设计之生命周期详解
  3. ASP.NET组件设计之传输机制浅析
  4. ASP.NET组件设计之复杂属性和状态管理浅析
  5. ASP.NET httpHandler使用浅析
责任编辑:仲衡 来源: 教程在线
相关推荐

2009-08-10 14:38:29

ASP.NET组件设计

2009-08-10 15:42:33

ASP.NET Che

2009-08-05 16:53:14

ASP.NET组件设计

2009-08-05 16:59:55

ASP.NET组件设计

2009-08-10 14:08:15

ASP.NET服务器控ASP.NET组件设计

2009-08-06 13:08:23

ASP.NET控件开发

2009-07-24 18:02:46

2009-08-10 14:31:46

ASP.NET组件设计ASP.NET控件生命

2009-08-06 10:49:45

ASP.NET服务器控

2009-08-10 10:19:47

ASP.NET组件设计

2009-08-03 18:00:00

ASP.NET服务器控

2009-07-29 16:41:45

ASP.NET页面框架

2009-08-06 18:32:00

ASP.NET控件开发ASP.NET复合控件

2009-07-24 09:57:25

ASP.NET HTM

2009-08-06 18:18:27

2009-08-06 09:18:01

ASP.NET自定义控ASP.NET控件开发

2009-08-07 15:34:15

ASP.NET数据绑定

2009-08-07 14:05:21

ASP.NET控件

2009-08-06 17:13:56

ASP.NET自定义控

2009-08-07 17:49:44

控件设计器

同话题下的热门内容

太强了!Python 开发桌面小工具,让代码替我们干重复的工作!Python轻量级Web框架:Bottle库!Python居然被用来开发游戏了?盘点你想不到的Python开发场景用了那么久的Lombok,你知道它的原理么?实战 | 如何用 Python 自动化监控文件夹完成服务部署!Fury:一个基于JIT动态编译的高性能多语言原生序列化框架细思恐极,插上U盘就开始执行Python代码为什么 Python、Ruby 等语言弃用了自增运算符?

编辑推荐

使用Kotlin做开发一个月后的感想面试官问你什么是消息队列?把这篇甩给他!五大自动化测试的Python框架图文详解两种算法:深度优先遍历(DFS)和广度优先遍历(BFS)2018年最流行的十大编程语言,其中包括你用的语言吗?
我收藏的内容
点赞
收藏

51CTO技术栈公众号