写一个事件(不仅仅是为控件添加事件)
public class MailManager
{
public event EventHandler<NewMailEventArgs> NewMail;//定义一个事件,其实它是一个范型委托。这个委托需要两个参数。可以按F12跟到这个委托的定义
//定义一个事件的触发方法,这里为了类型安全,声明称protect
protected virtual void OnNewMail(NewMailEventArgs e)//上面定义的那个类,,在这里用来作为参数,传递信息
{ //因为时间可能被很多地方调用,为了类型安全,这里不是直接操作NewMail事件
EventHandler<NewMailEventArgs> temp = Volatile.Read(ref NewMail);
if (temp != null) temp(this,e);
}
//公开一个方法,用于把输入转化成一个期望的事件,触发事件OnNewMail
public void SimulateNewMail(string from ,string to,string subject)
{
NewMailEventArgs e = new NewMailEventArgs(from ,to,subject);
OnNewMail(e);
}
}
温馨提示: 本文由Jm博客推荐,转载请保留链接: https://www.jmwww.net/file/67925.html