我想避开我的孩子从形式出现很多次,当用户试图打开子窗体这已经是开放的MdiParent。避免这种情况的一种方法是通过禁用控制器(在我的情况下按钮),但我已经给此功能的快捷键(Ctrl键+大号)为好。因此,如果用户键入按Ctrl +大号,同一子窗体打开,我可以看到两个子窗体在MDI。中的MdiParent C#赢出如何避免多个子窗体形式
private void leadsToolStripMenuItem_Click(object sender, EventArgs e)
{
frmWebLeads formWeblead = new frmWebLeads();
formWeblead.MdiParent = this;
formWeblead.WindowState = System.Windows.Forms.FormWindowState.Maximized;
formWeblead.Show();
}
我想避免这种情况。我怎样才能做到这一点?
在图像,你可以看到一个子窗体名称在线信息作为用户使用菜单(线索)开第一次打开两次,并通过快捷键第二次。我不希望发生这种情况。如果表格已经打开,它应该避免打开另一个相同的表格...如何做到这一点?
@迈克卡隆感谢您的代码。你留给我的最后一部分造成了一些混淆,有疑问,声明的形式weblead我MDIParent和我想设置formWeblead =空使用frmWebLoad离开事件使用儿童父母访问,这是好的! ???或者有没有最好的方法 – panindra
我不认为我会使用离开事件,因为这是一个重点。相反,使用子窗体的Closing事件,当您关闭它时触发。 –
@Mike对于调用click事件的菜单项留下一些TODO;我喜欢禁用创建表单的菜单项,以避免与用户混淆。 “我点击”打开“,什么也没有发生”。 – gangelo