如何在关闭子窗体时更改MDIParent控件的外观
本文关键字:MDIParent 控件 外观 窗体 | 更新日期: 2023-09-27 18:18:34
我有一个名为frmMain的MDIParent表单。它有一个有两个按钮的面板,比如btnChild1和btnChild2。在btnChild1的Click事件中,我打开了一个frmChild1,并改变了btnChild1的颜色。现在,当frmChild1关闭时,我想要btnChild1。背景色设置为透明。但我不知道在哪种情况下我必须编码。请指引我吧?
您可以像下面这样在MDI父窗体中处理frmChild1
FormClosed
事件来存档
private void button1_Click(object sender, EventArgs e)
{
Form2 childForm = new Form2();
childForm.MdiParent = this;
childForm.FormClosed += childForm_FormClosed;
this.button1.BackColor = Color.Red;
childForm.Show();
}
void childForm_FormClosed(object sender, FormClosedEventArgs e)
{
this.button1.BackColor = Color.Transparent;
}
你可以这样做…
1。在frmMain中将按钮的可见性更改为Public。
2。在frmChild1的OnClose()事件中执行:
(这一点。
MdiParent ="RequiredColor";这违背了面向对象编程的概念。
另一种方式是显示你的frmChild1作为对话框,所以控制将被转移回frmMain只有在frmChild被关闭后,然后改变按钮的颜色,以您的要求。