读书人

帮忙看看这个 引用为空 的错误

发布时间: 2011-12-17 23:37:33 作者: rapoo

帮忙看看这个 引用为空 的异常
自己写的用户控件中 想让 Button_Click 就发出一个 ValueChanged 事件

public delegate void ValueChanged(object sender, EventArgs e);

public event ValueChanged MyValueChanged;

private void button_Click(object sender, EventArgs e)
{
MyValueChanged(sender, e);

}

为什么 在 MyValueChanged(sender, e); 这里会抛出 引用为空 的异常

昨天程序运行还一切正常,刚才突然变成这个了

请教。

[解决办法]
这种地方一般都写成这样的:
if(MyValueChanged!=null)
MyValueChanged(sender, e);
[解决办法]
MyValueChanged(sender, e);产生空引用是因为没有其他委托加到这个事件中。
你需要先判断他不为空,才能去调用。
if(MyValueChanged != null)
MyValueChanged(sender, e);

读书人网 >C#

热点推荐