C#关于事件参数的问题。。高手请进。。。

来源:百度知道 编辑:UC知道 时间:2024/05/03 05:39:31
代码如下:

using System;

class PubEventArgs
{
private readonly string M_magazineName;
private readonly DateTime M_pubDate;

public PubEventArgs(string MagazineName, DateTime PubDate)
{
M_magazineName = MagazineName;
M_pubDate = PubDate;
}

public string MagazineName
{
get { return M_magazineName; }

}
public DateTime PubDate
{
get { return M_pubDate; }
}
}

class send
{
public delegate void CompEventHandler(object sender, PubEventArgs e);
public delegate void LifeEventHandler(object sender, PubEventArgs e);

public event CompEventHandler Comp;
public event LifeEventHandler Life;

protected virtual void OnComp(PubEventArgs e)
{
CompEventHandler handler = Comp;
if (handler != null)

[原创] C#委托(Delegate)事件(Event)应用详解
http://hi.baidu.com/jonnysuen/blog/item/afbeec59416ada88810a1878.html

---------------------
已经帮你解答:

using System;

class send
{
//委托
public delegate void f();

private f x;
//声明事件
public event f M_x
{
//注意下面的语法
add { x += new f(value); }
remove { x -= new f(value); }
}

public void fx()
{
if (x != null)
Console.WriteLine("发新刊。。。");
x();
}
}

class receive
{
public void rec()
{
Console.WriteLine("新刊已经收到。。。");
}
}

class s
{
static void Main()
{
send pub = new send();