我试图通过几个WinForms之间的值,我总共有6个WinForms,用户将循环。我使用TextBox和Label控件在窗体之间传递值。C#Winforms之间传递值间歇工作
当我打开主要winform,然后单击一个按钮加载第二个winform,一切工作正常(我可以将值传递给第一个窗体)。我的问题是,一旦我将用户引导到另一种形式的this.Hide();
当前(第二WinForm的),然后尝试用第三种形式将值传递到第一,我得到以下错误:
Object reference not set to an instance of an object.
我困惑,因为应该通过值的控制传递值的第一个窗体不是NULL
我使用相同的代码将所有窗体连接在一起。
public MainForm MainForm;
然后我试图通过像这样的价值观:
MainForm.textBox1.Text = txt_FileName.Text;
注:所有可在形式之间传递值的文本框和标签控件public
人遇到这个?或者任何想法? 。
显然有些东西是空的,所以你需要向我们提供一些错误上下文中的代码。 – ChaosPandion 2012-01-31 03:29:29
您应该考虑使用在表单之间传递的简单数据对象,而不是公共控件。所有表单中的所有控件都应该是私人的(或者如果您从表单中获得的话可能会受到保护)。一般来说,用户界面对象中的公共控件是灾难发展的秘诀。 即使你得到这个工作,你会有这个设置的维修噩梦。 – xxbbcc 2012-01-31 03:29:48