using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Text;using System.Windows.Forms;namespace WindowsApplication1...{ public partial class Form1 : Form ...{ public Form1() ...{ InitializeComponent(); } //两个button方法 private void button1_Click(object sender, System.EventArgs e) ...{ if (textBox2.Text != "" && textBox1.Text != "") ...{ eventrun er = new eventrun(); eventmsg em = new eventmsg(er); EventLoginArgs e1 = new EventLoginArgs(textBox2.Text, textBox1.Text, textBox1.Text); er.runlogin(e1); } else ...{ MessageBox.Show("Your must input all the items!", "Login Info", MessageBoxButtons.OK); } } private void button2_Click(object sender, EventArgs e) ...{ eventrun er = new eventrun(); eventmsg em = new eventmsg(er); EventLoginArgs e1 = new EventLoginArgs(textBox2.Text, textBox1.Text, textBox1.Text); er.runlogout(e1); } //实现事件begin ...#region public delegate void UserLoginEventHandler(object sender, EventLoginArgs e);//定义委托封装学生类 public delegate void CancelEventHandler(object sender, EventLoginArgs e);//定义取消委托 //定义方法,并把方法封装到以上定义的两个委托中。 public class eventmsg ...{ public void hander1(object sender, EventLoginArgs e) ...{ MessageBox.Show("登陆事件:" + "ID:" + e.strUserID + "密码:" + e.strUserPWD); } public void hander2(object sender, EventLoginArgs e) ...{ MessageBox.Show("取消事件:" + "ID:" + e.strUserID + "密码:" + e.strUserPWD); } public eventmsg(eventrun er) ...{ UserLoginEventHandler lh = new UserLoginEventHandler(hander1); CancelEventHandler ch = new CancelEventHandler(hander2); //把封装了方法的委托加载到事件中 er.loginevent += lh; er.logoutevent += ch; } } //定义事件及运行事件的方法 public class eventrun ...{ public event UserLoginEventHandler loginevent; public event CancelEventHandler logoutevent; public void runlogin(EventLoginArgs e) ...{ if (loginevent != null) ...{ loginevent(this, e); } } public void runlogout(EventLoginArgs e) ...{ if (logoutevent != null) ...{ logoutevent(this, e); } } } #endregion //实现事件end } //定义学生类 public class EventLoginArgs : System.EventArgs ...{ public string strUserID; public string strUserName; public string strUserPWD; public EventLoginArgs(string userID, string userName, string userPWD) ...{ strUserID = userID; strUserName = userName; strUserPWD = userPWD; } }}