MDI容器
具体步骤如下:
private void 销售ToolStripMenuItem_Click(object sender, EventArgs e)
{
VisibledForm(); Form2 f2 = new Form2(); 打开新窗口
f2.MdiParent = this;
f2.Name = "f2";
OpenForm(f2);
} private void VisibledForm()
{
foreach (Control c in panel1.Controls)
{
if (c is Form)
{
c.Visible = false;
}
}
} private void 仓库ToolStripMenuItem_Click(object sender, EventArgs e)
{
VisibledForm(); 引用方法
Form3 f3 = new Form3();
f3.MdiParent = this;
f3.Name = "f3";
OpenForm(f3);
} private void 财务ToolStripMenuItem_Click(object sender, EventArgs e)
{
VisibledForm(); 引用方法
Form4 f4 = new Form4();
f4.MdiParent = this;
f4.Name = "f4";
OpenForm(f4);
} //传一个窗体对象过来,看看有没有打开,如果开打了,则还原已打开的窗口
//如果未打开,则打开此新窗口
//参数:要验证的窗体
//返回值:无 public void OpenForm(Form fff) Form的参数fff,创建方法OpenForm
{
bool has = false;
foreach (Control c in panel1.Controls)
{
if (c is Form) 如果这个控件是窗口
{
if (c.Name == fff.Name)
{
has = true; 如果走到这说明有
fff = c as Form;
}
}
} VisibledForm();
if (has) 然后进行判断
{
//fff.WindowState = FormWindowState.Maximized; 按说应该进行还原窗口,但是,这里如果还原的话,这一步并不会走,所以不用这一步,而是直接Show出来
fff.Show();
}
else 如果这个窗口没有打开,然后Show出来,也需要调取隐藏的方法,所以把这个方法写到外边
{
fff.Parent = panel1;
fff.Show();
} } private void Form1_Load(object sender, EventArgs e)
{
Form2 f2 = new Form2();
f2.MdiParent = this;
f2.Name = "f2";
OpenForm(f2);
}

MDI容器的更多相关文章

  1. winform 之MDI容器

    MDI是指将多控件窗体在同一窗体中打开 1.设置:属性中IsMDIContainer:true; 窗体变为灰色成为MDI窗体容器 2.MDI中一般采用菜单作为打开方式 3.子级窗体在MDI中打开,需先 ...

  2. MDI窗体容器和权限设置.avi

    一.MDI窗体容器 MDi窗体是装Form的容器.平常Form(窗体)就是平常展示的最高级别,但是MDI比Form还高级.它可以让其它窗体在它的内部打开,无法超出它的范围 1 创建:将某个窗体的属性: ...

  3. MDI窗体容器

    Mdi是一个窗体容器控件,直接在新建好的窗体里面,将此窗体设置为Mdi容器,开启了Mdi容器的窗体里面,如果有点击事件打开新窗体,则这些新窗体会在此窗体内部的Mdi容器中打开 操作步骤: 1.首先先新 ...

  4. C#-WinForm-MDI窗体容器、权限设置

    MDI窗体容器 - 放窗体的容器 窗体时顶级控件,是不允许放到其他的控件或窗体中的 (李献策lxc) 窗体属性中有一个属性:IsMdiContainer - 确定该窗体是否是MDI容器 在窗体中放一个 ...

  5. C# Windows - SDI和MDI应用程序

    生成MDI应用程序 MDI应用程序至少要由两个截然不同的窗口组成.第一个窗口叫做MDI容器(Container),可以在容器中显示的窗口叫做MDI子窗口. 要把应用程序的主窗口从一个窗体改为MDI容器 ...

  6. 2019-8-15C#MDI窗体实现多窗口效果

    C#MDI窗体实现多窗口效果  Visual C#是微软公司推出的下一代主流程序开发语言,他也是一种功能十分强大的程序设计语言,正在受到越来越多的编程人员的喜欢.在Visual C#中,提供了为实现M ...

  7. WinForm窗体设置

    属性: 软件启动后在屏幕中间 StartPosition = CenterScreen取消放大按钮 MaximizeBox = false不能拖动边框 FormBorderStyle = FixedD ...

  8. 构建布局良好的Windows程序

    工具箱→菜单和工具栏菜单栏MenuStrip的类型MenuItem:菜单项TextBox:文本框ComboBoX:组合框Separato:分割线前面都有ToolStrip做前缀 Applaction. ...

  9. 第二章 构建布局良好的windows程序

    工具箱→菜单和工具栏 菜单栏 MenuStrip的类型 MenuItem:菜单项 TextBox:文本框 ComboBoX:组合框 Separato:分割线 前面都有ToolStrip做前缀 Appl ...

随机推荐

  1. 服务调用restful或feign负载均衡ribbon

  2. Win10系列:C#应用控件基础13

    Image控件 开发Windows应用商店应用时,除了在界面中显示文字信息以外,还可以加入图片来配合说明及增加美观度.使用Image控件能够实现显示图片的功能,开发者可以根据需求使图片按照不同的方式显 ...

  3. day08_python_1124

    01 昨日内容回顾 文件操作 文件操作的流程: 1,打开文件创建文件句柄. 2,对文件句柄进行操作. 3,关闭文件句柄. 读, r r+ rb r+b read() 全部读取 read(n) 读取一部 ...

  4. JS 中的广度与深度优先遍历

    现在有一种类似树的数据结构,但是不存在共同的根节点 root,每一个节点的结构为 {key: 'one', value: '1', children: [...]},都包含 key 和 value,如 ...

  5. Django--QuerySet--基础查询

    Django--QuerySet--基础查询 创建模型类: from django.db import models # Create your models here. class Blog(mod ...

  6. jquery常用实例

    $("#returnTop").click(function () { var speed=200;//滑动的速度 $('body,html').animate({ scrollT ...

  7. 指导手册03:Hadoop基础操作

    指导手册03:Hadoop基础操作 Part 1:查看Hadoop集群的基本信息1.查询存储系统信息(1)在WEB浏览器的地址栏输入http://master:50070/ 请查看自己的Hadoop集 ...

  8. 第一个java程序以及java的运行机制

    课堂要点: 编写第一个java程序以及理解java的运行机制. 1.基本命令介绍: javac命令: 编译java文件得到.class字节码文件 -encoding 参数:指定编译的编码 java命令 ...

  9. raid的一些简单知识

    日一.RAID定义RAID(Redundant Array of Independent Disk 独立冗余磁盘阵列)技术是加州大学伯克利分校1987年提出,最初是为了组合小的廉价磁盘来代替大的昂贵磁 ...

  10. Oracle数据库统一审核的启用测试与关闭

    环境:windows server 2008.Oracle 12c R2 下面的步骤,连接为sysdba,除非指定了其它方式. (1)运行如下查询,确定统一审核是否启用了: select value ...