Event/Delegate的一个不错实例
2008-11-20 17:58
351 查看
Code
namespace MicrosoftEventPattern
{
public class MyClass
{
public delegate void MyDelegate(object sender, MyEventArgs e);
public event MyDelegate MyEvent;
public class MyEventArgs : EventArgs
{
public readonly string message;
public MyEventArgs(string message)
{
this.message = message;
}
}
//this method will be used to raise the event.
public void RaiseEvent(string msg)
{
if (MyEvent != null)
MyEvent(this, new MyClass.MyEventArgs(msg));
}
}
class Program
{
static void Main(string[] args)
{
MyClass myClass1 = new MyClass();
myClass1.MyEvent += new MyClass.MyDelegate(myClass1_MyEvent);
Console.WriteLine("Please enter a message\n");
string msg = Console.ReadLine();
//here is we raise the event.
myClass1.RaiseEvent(msg);
Console.Read();
}
static void myClass1_MyEvent(object sender, MyClass.MyEventArgs e)
{
if (sender is MyClass)
{
MyClass myClass = (MyClass)sender;
Console.WriteLine("Your Message is: {0}", e.message);
}
}
}
}
namespace MicrosoftEventPattern
{
public class MyClass
{
public delegate void MyDelegate(object sender, MyEventArgs e);
public event MyDelegate MyEvent;
public class MyEventArgs : EventArgs
{
public readonly string message;
public MyEventArgs(string message)
{
this.message = message;
}
}
//this method will be used to raise the event.
public void RaiseEvent(string msg)
{
if (MyEvent != null)
MyEvent(this, new MyClass.MyEventArgs(msg));
}
}
class Program
{
static void Main(string[] args)
{
MyClass myClass1 = new MyClass();
myClass1.MyEvent += new MyClass.MyDelegate(myClass1_MyEvent);
Console.WriteLine("Please enter a message\n");
string msg = Console.ReadLine();
//here is we raise the event.
myClass1.RaiseEvent(msg);
Console.Read();
}
static void myClass1_MyEvent(object sender, MyClass.MyEventArgs e)
{
if (sender is MyClass)
{
MyClass myClass = (MyClass)sender;
Console.WriteLine("Your Message is: {0}", e.message);
}
}
}
}
相关文章推荐
- 一个实例明白AutoResetEvent和 ManulResetEvent的用法 推荐
- JAVA--第十二周任务之1.编写一个应用程序,要求编写一个Panel的子类MyPanel,MyPanel中有一个文本框和一个按钮,要求MyPanel的实例作为其按钮的ActionEvent事件的监视
- 一个实例明白AutoResetEvent和 ManulResetEvent的用法
- delegate或event序列化的一个问题
- 【转】一个不错的Matlab的gui界面设计实例 (2008-10-03 15:47:30)matlab gui 界面 校园 分类:Matlab实例
- TextEvent事件小实例一个
- 一次偶然机遇找到一个不错的关于Android实现加载gif动画的实例,写一下分享个大家。
- event修饰的delegate实例展示
- 创建一个基于套接字的bufferevent实例-echo程序的实现
- C#事件(event)的一个实例
- 【整理】delegate+RemotingServices 委托+远程调用的一个实例
- 一个不错的Jtable实例
- java十二周实验.编写一个应用程序,要求编写一个Panel的子类MyPanel,MyPanel中有一个文本框和一个按钮,要求MyPanel的实例作为其按钮的ActionEvent事件的监视器,当单击
- 转:一个实例明白AutoResetEvent和 ManulResetEvent的用法
- Java中的接口与抽象类的比较、应用和实例 – 一个培训师不错的简洁解述
- AppDelegate相关,实现全局变量,一个类一个实例
- 一个C#中使用 event 和 delegate的小例子。
- 一个实例明白AutoResetEvent和 ManulResetEvent的用法
- WaitForMultipleObjects和Event配合使用,限制程序运行一个实例
- --java-- 十二周 【任务一】编写一个Panel的子类MyPanel,MyPanel中有一个文本框和一个按钮,要求MyPanel的实例作为其按钮的ActionEvent事件的监视器