using System;
using System.Collections.Generic;
using System.Text;
namespace ConsoleApplication6
{
class Program
{
static void Main(string[] args)
{
//创建事件发生器类实例
Master Boss = new Master();
//创建事件接收器类实例
Servant Secretary = new Servant();
//订阅事件,将事件与处理过程相关联
Boss.EatEvent += new EatEventHandler(Secretary.ArrangeFood);
//事件发生
Boss.Hungry("希尔顿大酒店", 5000.0m);
}
}
//定义事件数据类,从EventArgs基类继承
public class EatEventArgs : EventArgs
{
public String restrauntName; //饭店名
public decimal moneyOut; //花费
}
//定义委托类型
public delegate void EatEventHandler(object sender, EatEventArgs e);
//事件发生器类
public class Master
{
//创建事件名(吃)
public event EatEventHandler EatEvent;
//执行事件处理程序
public void OnEatEvent(EatEventArgs e)
{
//如果已经订阅了事件
if (EatEvent != null)
{
//执行用户自定义具体内容程序(事件)
EatEvent(this, e);
}
}
//事件发生
public void Hungry(String restrauntName, decimal moneyOut)
{
//实例化事件数据类,指定 饭店名,消费多少钱
EatEventArgs e = new EatEventArgs();
e.restrauntName = restrauntName;
e.moneyOut = moneyOut;
Console.WriteLine("老板说:");
Console.WriteLine("我饿了,要去{0}吃饭,消费{1}元", e.restrauntName, e.moneyOut);
//发生事件
OnEatEvent(e);
}
}
//事件接收器类
public class Servant
{
//用户自定义具体过程
public void ArrangeFood(object sender, EatEventArgs e)
{
Console.WriteLine();
Console.WriteLine("女秘说:");
Console.WriteLine("我的老板, 您的命令是 : ");
Console.WriteLine("吃饭地点 -- {0}", e.restrauntName);
Console.WriteLine("准备消费 -- {0}元 ", e.moneyOut);
Console.WriteLine("好的,正给您安排。。。。。。。。\n");
System.Threading.Thread.Sleep( 5000 );
Console.WriteLine("老板,您的食物在这儿,请慢用");
Console.Read();
}
}
}
using System.Collections.Generic;
using System.Text;
namespace ConsoleApplication6
{
class Program
{
static void Main(string[] args)
{
//创建事件发生器类实例
Master Boss = new Master();
//创建事件接收器类实例
Servant Secretary = new Servant();
//订阅事件,将事件与处理过程相关联
Boss.EatEvent += new EatEventHandler(Secretary.ArrangeFood);
//事件发生
Boss.Hungry("希尔顿大酒店", 5000.0m);
}
}
//定义事件数据类,从EventArgs基类继承
public class EatEventArgs : EventArgs
{
public String restrauntName; //饭店名
public decimal moneyOut; //花费
}
//定义委托类型
public delegate void EatEventHandler(object sender, EatEventArgs e);
//事件发生器类
public class Master
{
//创建事件名(吃)
public event EatEventHandler EatEvent;
//执行事件处理程序
public void OnEatEvent(EatEventArgs e)
{
//如果已经订阅了事件
if (EatEvent != null)
{
//执行用户自定义具体内容程序(事件)
EatEvent(this, e);
}
}
//事件发生
public void Hungry(String restrauntName, decimal moneyOut)
{
//实例化事件数据类,指定 饭店名,消费多少钱
EatEventArgs e = new EatEventArgs();
e.restrauntName = restrauntName;
e.moneyOut = moneyOut;
Console.WriteLine("老板说:");
Console.WriteLine("我饿了,要去{0}吃饭,消费{1}元", e.restrauntName, e.moneyOut);
//发生事件
OnEatEvent(e);
}
}
//事件接收器类
public class Servant
{
//用户自定义具体过程
public void ArrangeFood(object sender, EatEventArgs e)
{
Console.WriteLine();
Console.WriteLine("女秘说:");
Console.WriteLine("我的老板, 您的命令是 : ");
Console.WriteLine("吃饭地点 -- {0}", e.restrauntName);
Console.WriteLine("准备消费 -- {0}元 ", e.moneyOut);
Console.WriteLine("好的,正给您安排。。。。。。。。\n");
System.Threading.Thread.Sleep( 5000 );
Console.WriteLine("老板,您的食物在这儿,请慢用");
Console.Read();
}
}
}