C#委托事件使用简单示例
2011-01-11 17:57 ☆冷枫☆ 阅读(470) 评论(1) 编辑 收藏 举报C#中使用事件简单的说就那么几个步骤:
1、定义一个委托;
2、定义一个事件;
3、编写事件处理函数;
4、注册并触发事件。
在这里我们以一个"猫叫老鼠跑"为例,简单的阐述一下委托事件的使用方法,具体的我们可以看下下面的demo,相信对委托事件还不是很理解的朋友有所启发.
class Program
{
static void Main(string[] args)
{
cat cat = new cat(); //产生一个猫类对象
mouse mo = new mouse(); //产生一个鼠类对象
cat.Emethod += new cat.delegatehandler(mo.Run); //注册事件【触发委托订阅的方法】
cat.Cry();
Console.ReadKey();
}
}
//猫类
class cat {
public delegate void delegatehandler(); //定义委托
public event delegatehandler Emethod; //定义事件
//事件触发方法【猫叫一声触发事件】
public void Cry() {
Console.WriteLine("miao...");
raiseEvt();
}
public void raiseEvt() {
//如果定义订阅过事件则触发事件
if (Emethod != null)
{
Emethod();
}
}
}
//鼠类
class mouse {
//委托的方法
public void Run() {
Console.WriteLine("猫来了,快跑啊。。。");
}
}
{
static void Main(string[] args)
{
cat cat = new cat(); //产生一个猫类对象
mouse mo = new mouse(); //产生一个鼠类对象
cat.Emethod += new cat.delegatehandler(mo.Run); //注册事件【触发委托订阅的方法】
cat.Cry();
Console.ReadKey();
}
}
//猫类
class cat {
public delegate void delegatehandler(); //定义委托
public event delegatehandler Emethod; //定义事件
//事件触发方法【猫叫一声触发事件】
public void Cry() {
Console.WriteLine("miao...");
raiseEvt();
}
public void raiseEvt() {
//如果定义订阅过事件则触发事件
if (Emethod != null)
{
Emethod();
}
}
}
//鼠类
class mouse {
//委托的方法
public void Run() {
Console.WriteLine("猫来了,快跑啊。。。");
}
}
励志博客园--优秀的阅读、励志、交流学习平台。您的网上心灵家园!