您的位置:首页 > 其它

Winform窗体设计 实现任何时候在主容器中存在一个子窗体?

2010-06-14 13:18 316 查看
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace 父子窗体
{
public partial class MainForm : Form
{
public MainForm()
{
InitializeComponent();
}

private void 新建ToolStripMenuItem_Click(object sender, EventArgs e)
{

Child chi = new Child();

CheckChildOpenState(this,chi);

}

private void 打开ToolStripMenuItem_Click(object sender, EventArgs e)
{
FirstForm first = new FirstForm();
CheckChildOpenState(this, first);

}

#region 窗体操作
/// <summary>
/// 名称:CheckChildOpenState
/// 功能:用子窗体的Name进行判断是否已实例化,如果存在则将他激活
/// </summary>
/// <param name="MdiForm">容器窗体</param>
/// <param name="ChildForm">子窗体</param>
public static void CheckChildOpenState(Form MdiForm, Form ChildForm)
{
foreach (Form tempChildForm in MdiForm.MdiChildren)
{
if (tempChildForm.Name == ChildForm.Name.ToString())
{
if (tempChildForm.WindowState == FormWindowState.Minimized)
{
tempChildForm.WindowState = FormWindowState.Normal;
}
tempChildForm.Activate();
return;
}
else
{
tempChildForm.Close();
}
}
ChildForm.MdiParent = MdiForm;
ChildForm.Show();
}
#endregion

}
}


Winform窗体设计 实现任何时候在主容器中存在一个子窗体?
Winform窗体设计 实现任何时候在主容器中存在一个子窗体?
Winform窗体设计 实现任何时候在主容器中存在一个子窗体?
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐