using System;
using System.Collections.Generic;
using System.Text;
namespace ConsoleApplication1
{
/// <summary>
/// 首先定义一个事件参数类
/// </summary>
public class DemoEventArg : EventArgs
{
private string message;
public string Message
{
get { return message; }
}
public DemoEventArg(string m)
{
this.message = m;
}
}
//定义公用委托
public delegate void DemoEventHandler(Demo sender, DemoEventArg e);
/// <summary>
/// 在这个类中加上自定义事件
/// </summary>
public class Demo
{
string name;
public Demo()
{ }
public Demo(string m)
{
name = m;
}
public event DemoEventHandler handler; //声明事件
//
public void WorkEvent(string message)
{
//add another code here
//.....
//最后加上委托调用.
if (handler != null)
{
handler(this, new DemoEventArg(message));
}
}
}
class Program
{
static void Main(string[] args)
{
Demo demo = new Demo("demo");
demo.handler += new DemoEventHandler(demo_handler);
Console.WriteLine("input message:");
string message = Console.ReadLine();
demo.WorkEvent(message);
}
static void demo_handler(Demo sender, DemoEventArg e)
{
Console.WriteLine(sender.ToString() + '/t' + e.Message);
}
}
}
using System.Collections.Generic;
using System.Text;
namespace ConsoleApplication1
{
/// <summary>
/// 首先定义一个事件参数类
/// </summary>
public class DemoEventArg : EventArgs
{
private string message;
public string Message
{
get { return message; }
}
public DemoEventArg(string m)
{
this.message = m;
}
}
//定义公用委托
public delegate void DemoEventHandler(Demo sender, DemoEventArg e);
/// <summary>
/// 在这个类中加上自定义事件
/// </summary>
public class Demo
{
string name;
public Demo()
{ }
public Demo(string m)
{
name = m;
}
public event DemoEventHandler handler; //声明事件
//
public void WorkEvent(string message)
{
//add another code here
//.....
//最后加上委托调用.
if (handler != null)
{
handler(this, new DemoEventArg(message));
}
}
}
class Program
{
static void Main(string[] args)
{
Demo demo = new Demo("demo");
demo.handler += new DemoEventHandler(demo_handler);
Console.WriteLine("input message:");
string message = Console.ReadLine();
demo.WorkEvent(message);
}
static void demo_handler(Demo sender, DemoEventArg e)
{
Console.WriteLine(sender.ToString() + '/t' + e.Message);
}
}
}