先看图
我是一个面向百度的程序员,遇到问题偷懒就是找度娘,网上打开子窗体的代码有许多,但是关闭子窗体的我没有度到,于是自己研究了10秒代码后有了启发,既然有打开代码,就能写关闭代码。

第一步:子窗体打开代码:
在frmmain 代码中 有 SetTabShow 一个过程 是为了打开子窗体,代码如下:

        private void SetTabShow(string tabName, string sfrmName){bool isOpen = false;foreach (SuperTabItem item in superTabCtrMain.Tabs){//已打开if (item.Name == tabName){superTabCtrMain.SelectedTab = item;isOpen = true;break;}}if (!isOpen){//反射取得子窗体对象。object obj = Assembly.GetExecutingAssembly().CreateInstance("szhyglc." + sfrmName, false);//需要强转Form form = (Form)obj;//设置该子窗体不为顶级窗体,否则不能加入到别的控件中form.TopLevel = false;form.Visible = true;//form.AddOwnedForm = this;//布满父控件form.Dock = DockStyle.Fill;//创建一个tabSuperTabItem item = superTabCtrMain.CreateTab(tabName);//设置显示名和控件名item.Text = tabName;item.Name = tabName;//将子窗体添加到Tab中item.AttachedControl.Controls.Add(form);//选择该子窗体。superTabCtrMain.SelectedTab = item;}}

调用

SetTabShow("会员列表", "frmHy");

第二步 做一个委托

        public static frmmain m_frmmain;public frmmain(){m_frmmain = this;   //这是重点this.EnableGlass = false;InitializeComponent();//this.MinimumSize = new Size(1138, 757);}

第三步 子窗体关闭代码

    public class myvar{public static void TabClose(string tabName, SuperTabControl superTabCtrMain){try{foreach (SuperTabItem item in superTabCtrMain.Tabs){//已打开if (item.Name == tabName){MessageBox.Show("准备关闭");//superTabCtrMain.SelectedTab = item;superTabCtrMain.CloseTab(item);break;}}}catch (Exception ex){MessageBox.Show(ex.Message,"QQ:4126488");}}}

调用

        private void buttonX1_Click(object sender, EventArgs e){myvar.TabClose("会员列表", frmmain.m_frmmain.superTabCtrMain);}

转载请注明出处:
撰写人:张新宇
QQ:4126488

DotNetBar SuperTabItem 打开与关闭子窗体相关推荐

  1. Electron中打开和关闭子窗口以及子窗口向父窗口传值

    场景 用HTML和CSS和JS构建跨平台桌面应用程序的开源库Electron的介绍以及搭建HelloWorld: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/a ...

  2. 在主窗体中打开一个新子窗体,如果已有子窗体,则激活它,而不打开新的。...

    frmGroupMgr fgm = null; //遍历窗体中是否已存在同名的子窗体 foreach (Form f in this.MdiChildren) { //检测是不是当前子窗体名称 if ...

  3. Delphi中实现MDI子窗体(转)

    用MDI实现浏览子窗口,具有窗口管理功能,同屏观看多个网页的内容  ① 多文档窗体(MDI)  MDI窗体是一种具有主子结构的窗体体系,微软的Word便是其中的一个典型例子.MDI体系中至少需要两种窗 ...

  4. C#中在主窗体中用ShowDialog方法显示子窗体的使用技巧

    显示和关闭子窗体: 方法1:源代码: EatGood.FoodManageUI.MessageForm.ConfirmDelFeelkindOrFeelsForm feelkindform = new ...

  5. MDI窗体与子窗体的显示问题--(如何让主窗体是被控件挡住的子窗体显示)

    机房收费系统热火朝天的进行着,于此同时问题也是毫不留情的就来了,在MDI窗体中添加了picture控件后,子窗体不能显示就是我遇到的第一个问题.刚刚着手做系统遇到这样的问题,挺棘手的,当时在网上查过很 ...

  6. WinForm 子窗体 调用 父窗体 方法

    今天我从子窗体添加,刷新父窗体数据并关闭子窗体时百度查到的,希望对大家能有所帮助. 父窗体弹窗按钮Click: Son s = new Son(); s.Owner = this; s.Show(); ...

  7. js 弹出子页面与关闭子页面刷新父页面的问题

    在使用js弹出子页面并在关闭子页面的时候刷新父页面的时候遇到不能刷新的问题,为这个事郁闷了好久,在网上找相关的资料基本上都是使用window.opener.location.href=window.o ...

  8. mfc 设置子窗口只打开一遍_MFC 判断子窗体是不是已经打开,避免重复创建

    MFC 判断子窗体是否已经打开,避免重复创建 在主窗体中,嵌入一个很多个子窗体,但是,每次只显示一个. 我的做法是,首先在主窗体头文件中定义子窗体对象,然后在单击显示按钮的时候,先判断子窗体是否已经被 ...

  9. 【转】子窗体刷新父窗体使用接口模式 父窗口关闭子窗口

    在网络中搜索了下,发现使用接口来刷新父窗体,自己认为比较方便.也比较好容易理解.所以我也特此写一片博客进行记录,对自己进行深入的学习和方便再回头来复习.很多东西都是自己以前做过的,但是很长一段时间之后 ...

最新文章

  1. 李飞飞最新访谈:我每天都在对AI的担忧中醒来
  2. 【转载】[Windows 8]Hello Windows 8 - Windows 8 Developer Preview搶先預覽
  3. maxcompute 2.0复杂数据类型之struct
  4. 5-Interrupt Management Framework
  5. 伪元素控制网页表单样式
  6. 邯郸学院计算机专业是本科还是专科,邯郸学院是大学吗 是本科还是专科
  7. Linux Shell基础 - 流程控制 - for循环 - while 循环 - until循环
  8. 1988-B. 有序集合
  9. 轻量级.Net Core服务注册工具CodeDi发布啦
  10. python-解码 decode 报错的问题
  11. leetcode —— 29. 两数相除
  12. linux下docker安装步骤_linux下安装mysql8步骤
  13. SAP License:MM模块审批策略问题
  14. 火星人谚语系列之四:对问题最深入的认识是知道答案
  15. Android_(服务)Vibrator振动器
  16. 利用R语言进行具有周期性的时间序列分析
  17. MPLS 网络技术 — 组网方案
  18. 同一服务器中,同一框架下的不同二级域名之间网站session如何互通
  19. WORD中怎样替换文字格式?
  20. websocket 超时重新连接

热门文章

  1. MFCWindows
  2. 《鹰猎长空》回顾电影发展历程,前瞻投资趋势
  3. Win10禁止某些程序运行方法
  4. Windows编程 内存中加载图片并显示 Direct离屏表面的实现
  5. 140个绝对经典的电脑技巧
  6. Photoshop图片局部马赛克
  7. 最小二乘法的无偏估计
  8. 数据库(四)_MySQL索引
  9. RxJava(八)Disposable和Transformer
  10. 部署ELK+Kafka+Filebeat日志收集分析系统