本文介绍了如何在Windows Forms应用程序中实现Form2访问和操作Form1上控件的具体方法与步骤。
为了在点击Form1上的按钮后弹出新窗口Form2,并且从Form2中的Button控制Form1的某些控件,可以使用委托或者通过引用传递的方式实现。
下面是一个简单的例子:
在Form1中,在button1_Click事件里写入以下代码:
```csharp
private void button1_Click(object sender, EventArgs e)
{
this.button1.Enabled = false;
Form2 f2 = new Form2(ref this.button1);
f2.Show();
}
```
在Form2的构造函数中传递引用,如下所示:
```csharp
public Button button;
public Form2(ref Button button)
{
this.button = button;
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
this.button.Enabled = true;
}
```
这样当Form2中的按钮被点击时,就可以控制并修改Form1中Button的状态了。