System.EventArgs e = new EventArgs();
OnPlayGame(e);
}
protected virtual void OnPlayGame(EventArgs e)
{
if(PlayGame != null)
{
PlayGame(this,e);
}
}
}
// 定义委托处理程序
public delegate void PlayGameHandler(object sender,System.EventArgs e);
}
从上面的例子,可以很容易的发现,当小张玩游戏后,马上激发事件OnPlayGame,于是事件便去查询是否被委托if(PlayGame != null)说明没有被委托,那就让小张玩下去,如果委托了z.PlayGame += new PlayGameHandler(w.扣钱);那么就可以执行扣钱指令。