C# 委托及事件
2014-10-11 15:17
239 查看
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace 委托及事件 { class Program { static void Main(string[] args) { Emplyee em = new Emplyee(); Reporter re = new Reporter(); //指明事件触发后,由谁来处理 em.PlayGame+=new DelegateClassHandle(re.Notify); em.Game(); Console.ReadKey(); } } public delegate void DelegateClassHandle(); //定义托管 public class Emplyee //定义员工类 { public event DelegateClassHandle PlayGame; //定义托管的绑定事件PlayGame public void Game() //定义一个Game方法 { if (PlayGame != null) //判断事件是否为空 { Console.WriteLine("哈哈,开始玩游戏"); PlayGame(); } } } public class Reporter //定义一个报告类 { public void Notify() { Console.WriteLine("报告老板,有人玩游戏"); } }带参数的委托:
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace 委托及事件 { class Program { static void Main(string[] args) { Employee el = new Employee("二逼青年",888); Reporter re = new Reporter(); //指明事件触发后,由谁来处理 el.PlayGame+=new DelegateClassHandle(re.Notify); el.Game(); Console.ReadKey(); } } /// <summary> /// /// </summary> /// <param name="sen">触发事件的源</param> /// <param name="e">同时携带的参数</param> public delegate void DelegateClassHandle(object sen, cc e); //定义托管 public class Employee //定义员工类 { string _name; int _number; public string Name { get { return _name; } set { _name = value; } } public int Number { get { return _number; } set { _number = value; } } public event DelegateClassHandle PlayGame; //定义托管的绑定事件PlayGame public Employee(string nm, int nu) { _name = nm; _number = nu; } public void Game() //定义一个Game方法 { if (PlayGame != null) //判断事件是否为空 { Console.WriteLine("哈哈,开始玩游戏"); //实例化一个参数类 cc e = new cc(); e.Name = _name; e.Number = _number; PlayGame(this,e); } } } public class Reporter //定义一个报告类 { public void Notify(object sen, cc e) { Console.WriteLine("报告老板,{0}在{1}玩游戏",e.Name,e.Number ); } } public class cc : EventArgs { public string Name = ""; public int Number = 0; } }
相关文章推荐
- 用 C++ 实现 C# 中的 委托/事件 (2-delegate event functor)
- 深入理解C#编程中的组件-事件-委托
- 我对C#中事件委托的通俗看法
- C#里的委托和事件实现Observer
- C#中利用委托传递事件
- C#中的组件-事件-委托
- C#委托及事件
- C#中的委托与事件
- C#-委托和事件
- C#中委托,事件理解入门
- 用C++实现C#中的委托/事件(标准C++之升级版)
- C#的事件处理与委托
- C#里的委托和事件实现
- C#中的委托与事件[翻译]
- C#里的委托和事件实现Observer
- C#体验·委托和事件
- 用 C++ 实现 C# 中的 委托/事件 (5-functor2)
- C#中,对委托和事件的理解
- 在C#的事件、多播中使用委托
- C# 事件 委托 教程