我有两种形式。我在主窗口中创建了一个菜单栏并设置了IsMdicontainer= true
。在第二个窗口中,我创建了菜单栏并设置了windowstate is maximize
。
我的问题是当子窗口处于活动状态时,父窗口菜单栏也会显示子窗口菜单。我需要隐藏父窗口菜单栏,只有在子窗口关闭后才显示它。
答案 0 :(得分:0)
假设您从此菜单打开子表单,则可以使用MdiChildActivate
中的ParentForm
事件处理程序。
这甚至适用于多个子表单。
private void ParentForm_MdiChildActivate(object sender, EventArgs e)
{
int count = Application.OpenForms.
Cast<Form>().
Count(x => x.IsMdiChild);
// The menu will be displayed again only if all subforms are closed
parentFormMenu.Visible = (count <= 0);
}