Windows程序有一个事件机制。
用于处理用户事件。
在WinForm中我们经常需要给控件添加事件。
例如给一个Button按钮添加一个Click点击事件。
给TextBox文本框添加一个KeyPress 键盘按下事件。
通过强大的IDE,双击控件就能直接添加一个该控件默认的事件。
private void btnError_Click(object sender, EventArgs e)
{
//some codes here.
}
双击Button,自动生成的是Click事件,事件的命名是控件名字加下划线加 *** 作名字命名的。
该事件还有两个参数,一个是object类型的sender,还有一个是EventArgs类型的e。
从英文意思来看sender和e这两个参数:
sender:发送者
EventArgs:事件参数 (EventArguments)
Aggument:论点
object:对象,基类
sender参数用于传递指向事件源对象的引用。
简单来讲就是当前的对象。
例如button的点击事件,那么这个sender就代表这个button自己。
private void btnError_Click(object sender, EventArgs e)
{
//获取当前点击的Button
Button thisClickedButton = sender as Button;
}
由于sender指的是事件源对象,sender是object类型,用的时候记得转一下类型才可以用。
e参数是是EventArgs类型。
简单来理解就是记录事件传递过来的额外信息。
一般用于传递用户点击的位置啊,键盘按下的键等事件的额外信息。
例如TextBox中有一个KeyPress事件。
private void inputTextBox_KeyPress(object sender, KeyPressEventArgs e)
{
//获取当前对象
TextBox tb = sender as TextBox; //获取当前按下来的键值
char c = e.KeyChar;
}
在事件里可以通过e点出来,不过不同的事件传递的信息也会不同。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)