代码如下!为什么我写的事件不执行那! public partial class Form1 : Form
{
public delegate void CustomEventHandler(object sender, EventArgs e);//首先定义一个委托类型的对象CustomEventHandler
//用delegate数据类型声明事件,要用event关键字,这里定义了两个字件;
public event CustomEventHandler CustomEvent; public Form1()
{
InitializeComponent();
} private void Form1_Load(object sender, EventArgs e)
{
CustomEvent += new CustomEventHandler(Form1_CustomEvent);
} void Form1_CustomEvent(object sender, EventArgs e)
{
MessageBox.Show("工程");//这里为什么不执行那!
}
}
{
public delegate void CustomEventHandler(object sender, EventArgs e);//首先定义一个委托类型的对象CustomEventHandler
//用delegate数据类型声明事件,要用event关键字,这里定义了两个字件;
public event CustomEventHandler CustomEvent; public Form1()
{
InitializeComponent();
} private void Form1_Load(object sender, EventArgs e)
{
CustomEvent += new CustomEventHandler(Form1_CustomEvent);
} void Form1_CustomEvent(object sender, EventArgs e)
{
MessageBox.Show("工程");//这里为什么不执行那!
}
}
if (CustomEvent!=null)
CustomEvent(something, something);
{
public delegate void CustomEventHandler(object sender, EventArgs e);//首先定义一个委托类型的对象CustomEventHandler
//用delegate数据类型声明事件,要用event关键字,这里定义了两个字件;
public event CustomEventHandler CustomEvent; public Form1()
{
InitializeComponent();
CustomEvent += new CustomEventHandler(Form1_CustomEvent);//订阅事件
}
protected virtual void OnCustomEvent(EventArgs e)
{
CustomEventHandler ceh=CustomEvent;
if(ceh!=null)
{
ceh(this,e);
}
} private void Form1_Load(object sender, EventArgs e)
{
OnCustomEvent(e);//触发事件;
} void Form1_CustomEvent(object sender, EventArgs e)
{
MessageBox.Show("工程");//这里为什么不执行那!
}
}
{
CustomEvent += new CustomEventHandler(Form1_CustomEvent);
CustomEvent.Invoke(sender,e);
}
public delegate void CustomEventHandler(object o, EventArgs e);
public event CustomEventHandler CustomEvent; public void OnCustomEvent() //事件触发函数
{
CustomEventHandler custom= CustomEvent;
if (custom != null)
{
custom(this, EventArgs.Empty);
}
} private void Form1_Load(object sender, EventArgs e)
{
this.CustomEvent += this.StartCustomEvent;
} private void StartCustomEvent(object sender, EventArgs e)
{
MessageBox.Show("我跟你爸爸是双胞胎!","猜猜叫我啥?");
} private void button1_Click(object sender, EventArgs e)
{
OnCustomEvent(); //在你想触发事件CustomEvent的地方添加OnCustomEvent();这里就没怎么处理参数(sender ,e );
}
{
public delegate void CustomEventHandler(object sender, EventArgs e);//首先定义一个委托类型的对象CustomEventHandler
//用delegate数据类型声明事件,要用event关键字,这里定义了两个字件;
public event CustomEventHandler CustomEvent; public Form1()
{
InitializeComponent();
} private void Form1_Load(object sender, EventArgs e)
{
CustomEvent += new CustomEventHandler(Form1_CustomEvent); CustomEvent(sender,e); //这里调用下委托就会执行需要的方法了
} void Form1_CustomEvent(object sender, EventArgs e)
{
MessageBox.Show("工程");//这里为什么不执行那!
}
}
和你直接写个方法 来调用没啥不一样