.NET事件处理的过程

2016-01-29 12:24 7 1 收藏

.NET事件处理的过程,本例介绍.NET事件处理的步骤,希望能给朋友们带来帮助~~

【 tulaoshi.com - ASP.NET 】

DOTNET事件处理的步骤与实现

第一步:定义一个合适的委托

例:

delegate void MoveEventHandler(Object Sender,MoveEventArgs e)

注意:DotNet框架中的标准委托的定义如下:

Public delegate void EventHabdler(Object Sender,EventArgs e)

参数说明:

(1)Sender:表示消息的发送方;

(2)EventArgs:默认的消息处理类(不含附加数据)

(3)强烈建议使用标准的委托定义事件

 

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com)

第二步:定义一个合适的消息

由于标准的EventArgs类不包含附加数据,可继承此类,使该类包含与特定时间相关的信息,

如: Public class MoveEventArgs

{ Public int newPosition;

Public MoveEventArgs(int newPosition)

{

this.newPosition = newPosition

}

}

 

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com)

第三步:发送方声明事件并设置激发事件的代码

声明事件:Public event 委托类型与事件标识

必须使用Public声明事件,否则接收方就不能登记事件处理器,激发一个事件的代码如下:

if (事件标识 != null)

{

MoveEventArgs args = new MoveEventArgs(value1);

}

事件标识(this,args)(注意:次事件为dotnet标准事件)

另:建议直接使用标准系统委托 EventHandler

发送消息 MyEvent(this.args);

Public event EventHandler MyEvent;

声明一个事件变量

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com)

 

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com)

第四步:接收方登记事件处理器

事件处理器也是一种委托,将接收方要完成的功能加入到事件处理器,实现委托与事件的挂钩,一旦接收方收到发送的消息后,将立即执行该方法,实现功能。

Sender s1 = new Sender();声明一个发送方实例

s1.事件标识 += new定义的委托(要实现的功能代码)

将事件与要实现的功能挂钩。

 

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com)

第五步:等待事件的发生

注意:接收方只能处理登记完成了事件处理器后的事件,对于在事件处理器之前就发生的事件,接收方并不能处理。

来源:http://www.tulaoshi.com/n/20160129/1485943.html

延伸阅读
标签: Web开发
这节,我们讲控件事件,控件因各自功能不同有不同的事件,我们不能一一赘述,看几个典型的例子! 例一 :按纽事件(command) 例二:下拉列表 例三:复选框 这个我们需要在属性里面设置 AutoPostBack的值为True,这里默认的总是 false
Android的Touch事件处理机制比较复杂,特别是在考虑了多点触摸以及事件拦截之后。 Android的Touch事件处理分3个层面:Activity层,ViewGroup层,View层。 首先说一下Touch事件处理的几条基本规则。 如果在某个层级没有处理ACTION_DOWN事件,那么该层就再也收不到后续的Touch事件了直到下一次ACTION_DOWN事件。 说明: a.某个层级没有处...
在程序设计过程中,如何轻松地处理众多的随机事件,往往是制作大型系统首先要考虑的问题之一。用C语言开发Windows程序时,可以方便地使用消息机制(Message),但是,设计VB程序时,就没有这样的方便条件了。例如,多个窗口同时打开同一个表(Table),当在一个窗口中对数据进行了修改,而其他的窗口也能够随之进行数据更新,这时就需要有...
标签: SQLServer
CREATE PROCEDURE [LoneUser] --INPUT @DBName nvarchar(50), @UserName nvarchar(50) AS Exec sp_configure allow updates,1 RECONFIGURE WITH OVERRIDE Declare @ExecStr nvarchar(4000) Select @ExecStr = Declare @b varbinary(85) + Use Master ...
微软的.NET Remoting提供了一种允许对象通过应用程序域与另一对象进行交互的框架。本文将通过两个具体的代码例子介绍它的特性,通过.NET Remoting,两个应用间的通信将变得非常简单,使用上也相当灵活。 最近几年来,在计算机世界中,关于“向外扩展”(scale-out)与“向上扩展”(scale-up)的讨论不断,并且有向scale-out转化的趋...

经验教程

692

收藏

71
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部