这边文章主要说明在MDI项目中,添加一个菜单项用于显示已打开的子窗体。并且点击子窗体名显示该子窗体.
步骤:
一.添加一个菜单项,在它的dropDownOpening事件中添加代码如下:
- /// <summary></summary>
- /// 窗体--显示已打开的窗体
- ///
- private void tsmiWindows_DropDownOpening(object sender, EventArgs e)
- {
- this.tsmiWindows.DropDownItems.Clear(); //tsmiWindows 为下图菜单项Abc的属性 Name
- /循环所有打开的子窗体
- foreach (Form frm in this.MdiChildren)
- {
- //定义菜单项
- ToolStripMenuItem menuItem = new ToolStripMenuItem();
- menuItem.Text = frm.Text;//菜单项显示值
- menuItem.Tag = frm;
- menuItem.Click += new EventHandler(menuItem_Click);//添加菜单项单击事件
- //如果当前子窗体为激活状态
- if (this.ActiveMdiChild == frm)
- menuItem.Checked = true;
- else
- menuItem.Checked = false;
- this.tsmiWindows.DropDownItems.Add(menuItem);//添加菜单项
- }
- }
- 二.单击窗体名显示该窗体
- <pre class="csharp" name="code">/// <summary></summary>
- /// 单击已打开的窗体
- ///
- private void menuItem_Click(object sender, EventArgs e)
- {
- if ((sender as ToolStripMenuItem).Tag is Form)
- {
- if (((sender as ToolStripMenuItem).Tag as Form) != null)
- {
- ((sender as ToolStripMenuItem).Tag as Form).Activate();//激活窗体
- }
- }
- }</pre>
已上转载自:http://blog.csdn.net/A1027/article/details/2531753
示例图如下。