我有这个代码,我可以使用菜单条关闭并打开子窗体。我的问题是,如果我有多个活动的子表单,我如何关闭特定的活动子表单?
private void fileMenu_Click(object sender, EventArgs e)
{
frmtview tv = new frmtview();
if (ActiveMdiChild != null)
{
ActiveMdiChild.Close();
}
else
{
tv.MdiParent = this;
tv.Dock = DockStyle.Left;
tv.Show();
}
}
private void Home_Load(object sender, EventArgs e)
{
frmtview tv = new frmtview();
tv.MdiParent = this;
tv.Dock = DockStyle.Left;
tv.Show();
}
答案 0 :(得分:0)
你的意思是所有打开的儿童窗户?如果是这样,当打开/创建子窗口时,将对象添加到列表<>(成员变量)。单击关闭菜单时,只需迭代列表中的所有项目并调用close方法。
列出childControls = new List();
void Closeclick(.......)
{
foreach(UserControl uc in childControls)
{
uc.Close();
}
}
void ActivateClick(.......)
{
HomeForm home = new HomeForm();
childControls.Add(home);
home.Show();
}