ASP.NET組件編程之事件編寫淺析
作者:佚名
ASP.NET組件編程中事件編寫的方法是什么呢?本問就向你介紹兩種ASP.NET組件編程的事件編寫方法。
ASP.NET組件編程之事件編寫是如何的呢?那么我們首先來看看ASP.NET組件的應(yīng)用:
ASP.NET組件編程之組件代碼:
- using System;
- using System.Web.UI;
- using System.Web.UI.WebControls;
- using System.ComponentModel;
- namespace NSEventStudy
- {
- public delegate void TwoEventHandle(int flag);
- public class EventStudy : System.Web.UI.WebControls.WebControl
- {
- ///////////////ASP.NET組件編程***種定義事件的方法////////////////////
- public event TwoEventHandle TwoEvent;
- public void Execute(int flag)
- {
- TwoEvent(flag);
- }
- ////////////////ASP.NET組件編程第二種定義事件的方法////////////////////
- private static object _Process = new object();
- public event TwoEventHandle ThreeEvent
- {
- add
- {
- Events.AddHandler(_Process,value);
- }
- remove
- {
- Events.RemoveHandler(_Process,value);
- }
- }
- public void InnerExecute(int flag)
- {
- TwoEventHandle handle = (TwoEventHandle)Events[_Process];
- if(handle != null)
- {
- handle(flag);
- }
- else
- {
- this.RaiseBubbleEvent(this,null);
- }
- }
- protected override void Render(HtmlTextWriter writer)
- {
- base.Render (writer);
- writer.WriteLine("我愛你,中國");
- }
- }
- }
ASP.NET組件編程之事件實(shí)現(xiàn)測試程序:
- using System;
- using System.Collections;
- using System.ComponentModel;
- using System.Data;
- using System.Drawing;
- using System.Web;
- using System.Web.SessionState;
- using System.Web.UI;
- using System.Web.UI.WebControls;
- using System.Web.UI.HtmlControls;
- namespace TestEvent
- {
- /// ﹤summary﹥
- /// WebForm1 的摘要說明。
- /// ﹤/summary﹥
- public class WebForm1 : System.Web.UI.Page
- {
- protected System.Web.UI.WebControls.Button Button1;
- protected NSEventStudy.EventStudy EventStudy1;
- private void Page_Load(object sender, System.EventArgs e)
- {
- // 在此處放置用戶代碼以初始化頁面
- }
- #region Web 窗體設(shè)計(jì)器生成的代碼
- override protected void OnInit(EventArgs e)
- {
- //
- // CODEGEN: 該調(diào)用是 ASP.NET Web 窗體設(shè)計(jì)器所必需的。
- //
- InitializeComponent();
- base.OnInit(e);
- }
- /// ﹤summary﹥
- /// 設(shè)計(jì)器支持所需的方法 - 不要使用代碼編輯器修改
- /// 此方法的內(nèi)容。
- /// ﹤/summary﹥
- private void InitializeComponent()
- {
- this.EventStudy1.ThreeEvent += new NSEventStudy.TwoEventHandle(this.EventStudy1_ThreeEvent);
- this.EventStudy1.TwoEvent += new NSEventStudy.TwoEventHandle(this.EventStudy1_TwoEvent);
- this.Button1.Click += new System.EventHandler(this.Button1_Click);
- this.Load += new System.EventHandler(this.Page_Load);
- }
- #endregion
- private void EventStudy1_TwoEvent(int flag)
- {
- this.Response.Write("﹤script﹥javascript:alert('TwoEvent事件觸發(fā)')﹤/script﹥");
- }
- private void EventStudy1_ThreeEvent(int flag)
- {
- this.Response.Write("﹤script﹥javascript:alert('ThreeEvent事件觸發(fā)')﹤/script﹥");
- }
- private void Button1_Click(object sender, System.EventArgs e)
- {
- this.EventStudy1.Execute(6);
- this.EventStudy1.InnerExecute(10);
- }
- }
- }
ASP.NET組件編程中事件的編寫實(shí)現(xiàn)就向你介紹到這里,希望對你有所幫助。
【編輯推薦】
責(zé)任編輯:仲衡
來源:
教程在線