理论上不应该这样,你可以监视一下,看看mForm的Controls属性的值是不是有问题。
做了一个简单的测试,你说的情况没有重现
[code]
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private Form _form;
public Form Form2
{
get { return _form; }
set { _form = value; }
}
private void Form1_Load(object sender, EventArgs e)
{
if (Form2 == null) {
//Form2里面只有一个label
Form2 = new Form2();
}
//这里会显示form2,里面有一个label,没有出现丢失控件的问题
Form2.Show();
}
}
[/code]