public class Master
{
public delegate void AskEventHandler();
public event AskEventHandler AskEvent;
public void Ask()
{
if (AskEvent != null)
{
Console.WriteLine("请帮我把资料发给客户");
AskEvent();
}
}
public static void Main()
{
Master me = new Master();
Employee x1 = new Employee("小王");
Employee x2 = new Employee("小李");
Employee x3 = new Employee("小赵");
me.AskEvent += new AskEventHandler(x1.DoWorkByTele);
me.AskEvent += new AskEventHandler(x2.DoWorkByEmail);
me.AskEvent += new AskEventHandler(x3.DoWorkByWechart);
me.Ask();
me.AskEvent -= new AskEventHandler(x1.DoWorkByTele);
me.Ask();
Console.ReadLine();
}
}
public class Employee
{
private string name;
public Employee(string n)
{
name = n;
}
public void DoWorkByTele()
{
Console.WriteLine("{0}将资料传真传给用户", name);
}
public void DoWorkByEmail()
{
Console.WriteLine("{0}将资料Email给用户", name);
}
public void DoWorkByWechart()
{
Console.WriteLine("{0}将资料Wechart给用户", name);
}
}
}