C# 最好的事件例子 动物练习篇
2010-06-04 11:03
176 查看
using System; using System.Collections.Generic; using System.Text; namespace 动物练习 { class Program { static void Main(string[] args) { Cat cat = new Cat("Tom"); Mouse mouse1 = new Mouse("Jerry"); Mouse mouse2 = new Mouse("Jack"); cat.CatShout += new Cat.CatShoutEventHandler(mouse1.Run); cat.CatShout += new Cat.CatShoutEventHandler(mouse2.Run); cat.Shout(); Console.Read(); } } //无参数委托事件 //class Cat //{ // private string name; // public Cat(string name) // { // this.name = name; // } // public delegate void CatShoutEventHandler(); // public event CatShoutEventHandler CatShout; // public void Shout() // { // Console.WriteLine("喵,我是{0}.", name); // if (CatShout != null) // { // CatShout(); // } // } //} //class Mouse //{ // private string name; // public Mouse(string name) // { // this.name = name; // } // public void Run() // { // Console.WriteLine("老猫来了,{0}快跑!", name); // } //} //有参数委托事件 class Cat { private string name; public Cat(string name) { this.name = name; } public delegate void CatShoutEventHandler(object sender, CatShoutEventArgs args); public event CatShoutEventHandler CatShout; public void Shout() { Console.WriteLine("喵,我是{0}.", name); if (CatShout != null) { CatShoutEventArgs e = new CatShoutEventArgs(); e.Name = this.name; CatShout(this, e); } } } public class CatShoutEventArgs : EventArgs { private string name; public string Name { get { return name; } set { name = value; } } } class Mouse { private string name; public Mouse(string name) { this.name = name; } public void Run(object sender, CatShoutEventArgs args) { Console.WriteLine("老猫{0}来了,{1}快跑!", args.Name, name); } } }
相关文章推荐
- C# 中的委托和事件 (很好的说明例子)
- C#中的委托和事件网上最好的解释
- 的C#事件例子
- C#事件-事件学习好例子
- c#中的事件最简单的例子
- C# 委托和事件 练习
- 不理解C#的枚举,委托和事件.请求高手给个通俗易懂的例子。就是有代码和对代码的详细解释。十分谢谢
- C#事件例子
- C#中委托和事件的对比例子
- c# 学习笔记之九 事件(event)的使用,一个简单例子揭示机理
- C#利用事件与委托进行窗体间传值简单小例子
- C#中关于委托练习的一个例子
- C#的事件委托小例子
- C#源码学习之---事件经典例子
- C# 关于委托和事件的妙文:通过一个例子详细介绍委托和事件的作用;Observer模式简介
- C#中关于委托练习的一个例子
- 一个例子帮你搞懂C#语言高级特性系列(02) --- 委托、事件和Lambda表达式
- C#基础练习(事件登陆案例)
- 很有助于理解C#中事件和委托的例子
- DataGridView.CellContentClick 事件的C#例子