答案 0 :(得分:1)
做到这一点的一种好方法是在子类中使用事件:
首先,声明事件:
public partial class ChildForm: Form
{
public event EventHandler ButtonClicked;
public ChildForm()
{
InitializeComponent();
}
}
然后在子表单的按钮onClick方法中调用它:
...
ButtonClicked?.Invoke();
...
如果您的onclick事件是button_onclick
,则它看起来像:
private void button_onclick(object sender, EventArgs e)
{
ButtonClicked?.Invoke();
}
并在从父表单中声明此子表单时,将刷新登录名添加到此事件中:
var childForm = new ChildForm();
childForm.ButtonClicked += (e,args)=>{
//put the logic here
}
childForm.Show();
答案 1 :(得分:0)
您可以使用如下引用:
public partial class MainForm : Form
{
YourChildForm ycf = new YourChildForm(this);
ycf.Show();
}
以您的孩子的形式:
public partial class YourChildForm : Form
{
MainForm mf_ref
public YourChildForm(MainForm mf)
{
InitializeComponent();
mf_ref = mf;
}
}
现在,您只需使用
就可以访问主窗体上的每个公共方法mf_ref.SomeMethod();