多文档界面(MDI)应用程序用于同时显示多个文档,每个文档显示在各自的窗口中。MDI应用程序中常有包含子菜单的“窗口”菜单,用于在窗口或文档之间进行切换。下面介绍一个实例,演示如何创建一个多文档界面应用程序。
创建一个Windows窗体应用程序,演示如何编写多文档界面应用程序。
(1)创建一个名为UseMdi的Windows窗体应用程序项目。
(2)修改窗体的IsMdiContainer属性,如图7-30所示。
将IsMdiContainer属性修改为True时,窗体Form1变为如图7-31所示的样式。
图7-30 控件设置1 图7-31 控件设置2
(3)为窗体添加如图7-32所示的菜单。
图7-32 主菜单
|
namespace UseMdi
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void 新建ToolStripMenuItem_Click(object sender, EventArgs e)
{
Form a = new Form();
a.MdiParent = this;
a.Show();
}
private void 关闭ToolStripMenuItem_Click(object sender, EventArgs e)
{
foreach (Form a in this.MdiChildren)
{
a.Close();
}
}
private void 最大化ToolStripMenuItem_Click(object sender, EventArgs e)
{
foreach (Form a in this.MdiChildren)
{
a.WindowState = FormWindowState.Maximized;
}
}
private void 最小化ToolStripMenuItem_Click(object sender, EventArgs e)
{
foreach (Form a in this.MdiChildren)
{
a.WindowState = FormWindowState.Minimized;
}
}
}
}
按Ctrl+F5组合键运行程序,运行结果如图7-33所示。
图7-33 运行结果
单击“新建”菜单,可以新建窗口。单击“关闭”菜单按钮,将会关闭所有子窗体。单击“最大化”按钮,将会最大化所有窗口。单击“最小化”按钮,将会最小化所有窗口,如图7-34所示。
图7-34 最小化所有窗口