一切正常方式多种形式的工作首先是,当你关闭启动窗体,然后辅助形式也将关闭。如果您在Form1
中创建您的Form2
,我会使用(your second Forms Instance).Show(this)
来显示它。然后,您可以通过Form2的父属性访问该表单。即
var form = (Form1)this.Owner();
然后,您应该能够访问所有的Form1
的公共方法,我也拿你正在使用,以节省您的屏幕截图,并放入公共方法的代码,没有必要有它一个按钮的点击事件,特别是当按钮被隐藏时。
下面是一个简单的例子:
Form1中
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
Form2 frm = new Form2();
frm.Show(this);
}
}
窗体2
public partial class Form2 : Form
{
public Form2()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
var frm = (Form1)this.Owner;
if (frm != null)
frm.button1.PerformClick();
}
}
我需要使用那个隐藏的按钮。我会尝试你的方法,我会回来的。 – user3281950
- >对象引用未设置为对象的实例。 var form =(Form1)this.Parent; form.button1。PerformClick(); – user3281950
你是如何创建form2的。您当时需要分配父项。 –