C# 父窗口(form1)与子窗口(form2)的问题

2025-05-11 11:24:29
推荐回答(3个)
回答1:

两种方法,第一种如楼上所说,用ShowDialog(),此时打开的是模态窗体,也就是在你关闭它之前其他任何窗体都无法使用。
第二种是使用Form的enable属性
在form1的按钮事件中加入代码:
Form2 frm = new Form2();
frm.Owner = this;
frm.Show();
this.Enabled = false;
在form2中重写关闭事件:
protected override void OnClosing(CancelEventArgs e)
{
this.Owner.Enabled = true;
}
个人建议用第二种

回答2:

你在页面跳转的时候用 from2.ShowDialog()而不是用from2.Show();

回答3:

那样的话,就别设置成父子关系,直接创建个新窗口行不?试试看。