c# winform 如何用子窗体整体刷新父窗体?
A窗体是父窗体
A窗体里打开了子窗体B
B b = new B();
b.ShowDialog();
B窗体里改了数据,想要关闭B窗体时把改动的数据显示到A窗体上
A窗体的数据没有在容器里,是直接在form里的label
FormA:
B b = new B();
b.ShowDialog();
if(b.dialogResult==dialogResult.Ok)
{
this.Refresh();
}
BForm关闭事件:
this.Hide();
this.DialogResult=DialogResult.Ok;
MainForm是父窗体,
ChildForm是子窗体,
我们在子窗体中修改父窗体的txtName(TextBox控件)的值,
在子窗体添加个构造函数
private MainForm mainForm;
public ChildForm(MainForm mainForm)
{
this.mainForm=mainForm;
}
private void Amend()
{
mainForm.txtName="已经在子窗体中修改";
this.Close();
}
txtName这个TextBox这个控件设为Public(假设存在这个控件的话)
所谓的窗体传值就是这个样子了,其实也可以直接将txtName这个控件直接传过来修改