2 qq 29862715 qq_29862715 于 2016.09.20 13:35 提问

用委托更新主窗体界面报未将对象引用设置到对象的实例

子窗体委托:

  public partial class Form_settings : Form
        {
            public delegate void DataChangeHandler(Object sender, EventArgs e);
            public event DataChangeHandler ReturnEvent;
            public Form_settings()
                {
                        InitializeComponent();
                }
         }

子窗体调用

  ReturnEvent(null,null);

主窗体:

  public MainFrom()
         {
             Form_settings CF = new Form_settings();
             CF.ReturnEvent += new Form_settings.DataChangeHandler(On_request);
            InitializeComponent();

        }
                 private void On_request(object sender,EventArgs e)
        {
            this.defaultLabel2.Text = AllVariable.XDBL.ToString() + "箱每跺";
        }

报错
图片说明

2个回答

qq_32190969
qq_32190969   2016.09.20 14:50

参数能NULL吗,你ReturnEvent(NULL,NULL)当让报错了,

qq_29862715
qq_29862715 我不需要参数啊。那放什么进去?
大约一年之前 回复
qq_32190969
qq_32190969   2016.09.20 15:45

子窗体委托:
public partial class Form_settings : Form
{
public delegate void DataChangeHandler();
public DataChangeHandler ReturnEvent;
public Form_settings(DataChangeHandler fun)
{
this.ReturnEvent = fun;
InitializeComponent();
}
}

子窗体调用
this.ReturnEvent();

主窗体:

public MainFrom()
{
Form_settings CF = new Form_settings(On_request);
InitializeComponent();

    }
             private void On_request()
    {
        this.defaultLabel2.Text = AllVariable.XDBL.ToString() + "箱每跺";
    }



            先试试
qq_32190969
qq_32190969 回复qq_29862715: public delegate void DataChangeHandler();最好定义在类的同级下
大约一年之前 回复
qq_29862715
qq_29862715 回复qq_29862715: 可以了,谢谢大神!
大约一年之前 回复
qq_29862715
qq_29862715 不行啊,还是那个错误。
大约一年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片