因项目需要,程序中有一个主窗体,多个子窗体。用主窗体的按钮来打开子窗体。
1.右键解决方案资源的项目名称,添加需要的子窗体
2.主窗体添加变量用于初始化子窗体 public System.Windows.Forms.Form fcomm;//串口设置窗口 初始化时把this传进去
3.为子窗口添加对应的构造函数
private Form1 form1;//使用form1前一定要判断是否为null
//原先的构造函数
public Form2()
{
InitializeComponent();
form1 = null;
}
//新的构造函数
public Form2(Form1 form1)
{
// TODO: Complete member initialization
this.form1 = form1;
InitializeComponent();//一定加上这句,vs自动生成的没这一句 一运行程序就崩溃
}
......
这样就可以通过form1调用主窗口了。
只是窗口之间互操作修改控件不是很方便,这是我目前使用的方法
this.form1.Controls.Find("comboBox1", true)[0].Text = “Hello World”;