在.NET中,改变MDI子窗口的状态既需要使用父窗口的函数,也需要调用子窗口的函数,这需要视情况而定。以下我列举了九种MDI的子窗口变化情况以及实现方法,其中this指向MDI父窗口:
1)最大化所有子窗口
只需要最大化某一个mdi child,即可最大化所有子窗口:
this.ActiveMdiChild.WindowState=System.Windows.Forms.FormWindowState.Maximized;
2)最小化所有子窗口(Minimize All):
逐一最小化所有子窗口:
foreach(Form form in this.MdiChildren)
{
form.WindowState=System.Windows.Forms.FormWindowState.Minimized;
}
3)使所有子窗口恢复普通大小
逐一Normalize所有子窗口:
foreach(Form form in this.MdiChildren)
{
form.WindowState=System.Windows.Forms.FormWindowState.Normal;
}
4)最大化当前激活子窗口
this.ActiveMdiChild.WindowState=System.Windows.Forms.FormWindowState.Maximized;
5)最小化当前激活子窗口
this.ActiveMdiChild.WindowState=System.Windows.Forms.FormWindowState.Minimized;
6)使当前子窗口恢复普通大小
this.ActiveMdiChild.WindowState=System.Windows.Forms.FormWindowState.Normal;
7)排列图标(Arrange Icons)
this.LayoutMdi(MdiLayout.ArrangeIcons);
需要注意的是,只有已经最小化的子窗口才会参与ArrangeIcon。
8)层叠所有子窗口
this.LayoutMdi(MdiLayout.Cascade);
这个操作兼有ArrangeIcon的作用。他会将所有未最小化的子窗口变为统一大小并层叠,同时会将最小化的子窗口ArrangeIcon。
9)并排所有子窗口
this.LayoutMdi(MdiLayout.TileHorizontal);
这个操作也兼有ArrangeIcon的作用,其余特点类似第八条。
1)最大化所有子窗口
只需要最大化某一个mdi child,即可最大化所有子窗口:
this.ActiveMdiChild.WindowState=System.Windows.Forms.FormWindowState.Maximized;
2)最小化所有子窗口(Minimize All):
逐一最小化所有子窗口:
foreach(Form form in this.MdiChildren)
{
form.WindowState=System.Windows.Forms.FormWindowState.Minimized;
}
3)使所有子窗口恢复普通大小
逐一Normalize所有子窗口:
foreach(Form form in this.MdiChildren)
{
form.WindowState=System.Windows.Forms.FormWindowState.Normal;
}
4)最大化当前激活子窗口
this.ActiveMdiChild.WindowState=System.Windows.Forms.FormWindowState.Maximized;
5)最小化当前激活子窗口
this.ActiveMdiChild.WindowState=System.Windows.Forms.FormWindowState.Minimized;
6)使当前子窗口恢复普通大小
this.ActiveMdiChild.WindowState=System.Windows.Forms.FormWindowState.Normal;
7)排列图标(Arrange Icons)
this.LayoutMdi(MdiLayout.ArrangeIcons);
需要注意的是,只有已经最小化的子窗口才会参与ArrangeIcon。
8)层叠所有子窗口
this.LayoutMdi(MdiLayout.Cascade);
这个操作兼有ArrangeIcon的作用。他会将所有未最小化的子窗口变为统一大小并层叠,同时会将最小化的子窗口ArrangeIcon。
9)并排所有子窗口
this.LayoutMdi(MdiLayout.TileHorizontal);
这个操作也兼有ArrangeIcon的作用,其余特点类似第八条。
梦想与现实的落差,就是我们离成功的距离~