c#调用其他窗体中的变量或函数

因项目需要,程序中有一个主窗体,多个子窗体。用主窗体的按钮来打开子窗体。

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”;


你可能感兴趣的:(C#,VS2013,窗口互操作,调用子窗体)