日期:2014-05-19  浏览次数:20642 次

模式对话框如何修改另一个窗体某控件的值
比如现在有一个窗体为Form1
Form1中有一个方法用来修改Form1中Label1控件的值:
public   void   setLabel1()
{
      this.Label1.Text   =   "aa ";
}

比如现在有一个模式对话框为Form2
在Form2中:
Form1   fm   =   new   Form1();
fm.setLabel1();//调用Form1中的方法

但是根本就没修改呀,应该怎么办呢?


------解决方案--------------------
http://topic.csdn.net/t/20041027/19/3497195.html
------解决方案--------------------
那是因为你Form2中的Form1 fm = new Form1();和你正在显示的Form1不是一个,你重新new了一个嘛。

可以利用Form2的构造将Form1正在显示的实例传进来,然后再操作这个Form1的实例。

Form1 form1 = null;
public Form2(Form1 form)
{
this.form1 = form;
}

然后,就可以form1.setLabel1();//调用Form1中的方法