EventArgs很明显是两个英文单词的合成,分别是Event–事件,Args–是个缩写单词,不过我猜应该是指
Arguments–Argument的复数
Argument的解释如下:
1. 争执,争吵;辩论[C][(+about/over/with)]
We had an argument about politics.
我们就政治展开了争论。
2. 理由,论据;论点[C][(+for/against)]
I accepted his argument that taxation should be increased.
我接受了他提出的应该增税的论点。
3. 说理;论证[U]
He went over line after line of wise argument.
他浏览了一行行高明的论证。
4. (文学作品等的)情节;内容提要[C]
5. 【数】幅角;宗数,自变量
6. 【电脑】引数,参数
可以,很多人都会认识在这里arguments的意思是第6的引数,参数.而看似也正确,不过个人更倾向于第4
个解释—-情节,内容提要.所以EventArgs的意思是事件细节.
以下是在百科找到的资料
EventArgs
是包含事件数据的类的基类,用于传递事件的细节。
一般在源码中是以这样的情况出现的:protected void EventHandler(object sender, EventArgs e)
EventHandler是一个委托声明,这里的参数,前者是一个对象(其实这里传递的是对象的引用,如果
是button1的click事件则sender就是button1),后面是包含事件数据的类的基类。
其实简单点说就是对象(object)sender导致了某个事件的发生,事件的内容就是(e)
在程序中的事件处理函数就是依赖EventHandler实现的:
比方说你点了一个按钮,程序怎么知道应该用哪个函数来处理这个动作呢?那么EventHandler会告诉
程序:”button1(sender)被点击(e)了,请调用对应的处理函数”。当然这个函数是谁,这个函数要做什么
,是由你自己写的。
再深入一层,这个过程实际上就是:你的动作被windows捕获,windows把这个动作作为系统消息发送
给程序(可以看message结构),程序从自己的消息队列中不断的取出消息,并在消息循环中寻找对应的
处理方式,这时message结构中的类似于sender和e就起到了引导程序使用正确的处理函数的作用。
归根究底,这个sender和e及其一整套的处理方式,只不过是windows消息机制的另外一种表现罢
参考与:
http://hi.baidu.com/570851835/blog/item/2fbcf08cd6fe0f1ab21bba37.html
转载于:https://www.cnblogs.com/piaoyf/archive/2012/04/21/2461700.html