1. 首先新建3个窗体:
FrmMaim:主窗口
FrmTool :工具箱窗口
FrmDB: 数据库窗口
2. 主窗体的操作
(1)把 IsMdiContainer 属性设定成 :true
(2)右击 - 引用 - using WeifenLuo.WinFormsUI.Docking;
(3)引用命名空间:using WeifenLuo.WinFormsUI.Docking;
(4)添加一个 dockPanel 控件,重命名为 :dockPanel1,使其在父窗体中停靠
3. 子窗体的操作
让子窗体继承 WeifenLuo.WinFormsUI.Docking.DockContent

主窗体程序:

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;using WeifenLuo.WinFormsUI.Docking;namespace demo
{public partial class FrmMain : Form{public FrmMain(){InitializeComponent();}private void FrmMain_Load(object sender, EventArgs e){// 方式1:以选项卡的方式停靠(左边)FrmTool frm1 = new FrmTool();frm1.Show(dockPanel1, DockState.DockLeft);dockPanel1.DockLeftPortion = 240;   // 240:表示停靠窗体宽度FrmDB frm2 = new FrmDB();frm2.Show(dockPanel1, DockState.DockLeft);dockPanel1.DockLeftPortion = 240;   // 240:表示停靠窗体宽度// 方式2:同时展开,分上下两部分停靠(右边)FrmTool frm3 = new FrmTool();frm3.Show(dockPanel1);frm3.DockTo(dockPanel1, DockStyle.Right);FrmDB frm4 = new FrmDB();frm4.Show(dockPanel1);frm4.DockTo(dockPanel1, DockStyle.Right);}}
}

子窗体程序:(两个相同,都是继承WeifenLuo.WinFormsUI.Docking.DockContent)

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 demo
{public partial class FrmTool : WeifenLuo.WinFormsUI.Docking.DockContent{public FrmTool(){InitializeComponent();}}
}

效果图:

修改主窗体程序如下,则以窗体浮动的方式显示:

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;using WeifenLuo.WinFormsUI.Docking;namespace demo
{public partial class FrmMain : Form{public FrmMain(){InitializeComponent();}private void FrmMain_Load(object sender, EventArgs e){// 以窗体浮动的方式显示FrmTool frm1 = new FrmTool();frm1.Show(dockPanel1);FrmDB frm2 = new FrmDB();frm2.Show(dockPanel1);//关闭时,应使用: frm.Hide();//使用frm.close()关闭了,则再次打开时,程序会报错}}
}

注意:若要关闭窗体浮动标签时,应该使 frm.Hide(); 不然再次打开此浮动标签时,程序会报错。

效果图:

源代码下载:
链接:https://pan.baidu.com/s/1buZTm1lv3jd06Aeo7Eujvw
提取码:jsri

C# 主画面开发 - 窗口停靠相关推荐

  1. pb mdi窗口多sheet_Filecoin奖励测试网8月3日开启,主网启动窗口:8月31日至9月21日...

    当我们进入 Filecoin 主网启动的最后阶段时,Lotus (Filecoin参考实现)正在取得快速进展.仅在过去两周内,该团队就对 Filecoin 市场实施的数据传输进行了重大改进,完成了验证 ...

  2. qml dockwidget窗口停靠

    前言 前面一篇文章介绍了KDDockWidgets的使用(文章在这里),其实主要目的就是为了用KDDockWidgets提供的Qt quick 下的窗口停靠功能.Qt原生部并没有提供Qt quick的 ...

  3. 最新cocos2d-x 3.0博客教学 小游戏[史上最坑爹的游戏] 001主画面以及关卡选择画面的制作

    cocs2d的开发环境我相信大家都能搭建好了,下面我们直接的进入正题,开始做我们的小游戏,如果对搭建环境还有不懂的童鞋请看我写的这篇博文 cocos2d-x 3.0游戏开发xcode5帅印博客教学 0 ...

  4. c语言开发窗口应用程序

    转载于:https://blog.csdn.net/liu_rong_fei/article/details/51271901 视频下载地址:链接: http://pan.baidu.com/s/1q ...

  5. Windows 窗口停靠测试

    窗口停靠的简单尝试 窗口设置停靠属性,当悬浮框拖入具有停靠属性的窗口内时,窗口显示停靠图标,当拖拽悬浮框的光标进入停靠图标内是,窗口动态显示停靠区域.当释放悬浮框时,悬浮框调整属性,变成停靠窗口的子窗 ...

  6. 为什么我星际争霸画面是窗口_为什么我喜欢看全球星际联盟

    为什么我星际争霸画面是窗口 The Global StarCraft II League (GSL) is a StarCraft II: Legacy of the Void (SC 2) tour ...

  7. Android 音乐播放器的开发教程(三) 小卷毛播放器的主界面开发 ---- 小达

    Android 音乐播放器的开发教程(三) 小卷毛播放器的主界面开发 拿好素材之后,打开你们的开发工具,小达这里用的是android studio1.0, 新建一个项目,打开activity_main ...

  8. 泰斗破环神学习笔记——主界面开发

    泰斗破环神学习笔记--主界面开发 主界面主要就是,角色状态面板.角色信息面板.金币与钻石数额面板 文章目录 泰斗破环神学习笔记--主界面开发 前言 一.委托(delegate) 二.事件(Event) ...

  9. 视频监控,多画面播放窗口,布局设计器

    视频监控,多画面播放窗口,布局设计器 下载点我 <script type="text/javascript"> </script><script ty ...

最新文章

  1. 夜间奇异规范:夜间高效自监督单目深度估计(ICCV 2021)
  2. 将两个DataFrame拼接起来,除了concat还有append()
  3. 替换元素节点replaceChild()
  4. VMware NSX组件构建矩阵
  5. 物业计算机管理系统论文,小区物业管理系统设计毕业论文
  6. SpringBoot 生产中 16 条最佳实践
  7. 美团外卖特征平台的建设与实践
  8. 1980年红色1元纸币值多少钱?
  9. IDEA2020版桌面图标变空白问题解决
  10. JDK 1.7 基本概念和目录结构
  11. arXiv每日推荐-5.16:语音/音频每日论文速递
  12. VS2010如何添加MSCOMM控件
  13. CSDN blog css -- 草绿风格
  14. 2022普通人做抖音的红利在哪里
  15. android中小火箭动态喷射动画的简单实现
  16. c语言忽略转义字符,C语言转义字符
  17. 莫提博客 - 简约优雅的个人博客系统
  18. 【Three.js入门】灯光与阴影、平行光阴影属性、聚光灯的属性和应用
  19. PP熔喷、线烧、折叠滤芯保安过滤器
  20. php数组:城市车牌对应城市名称

热门文章

  1. 更新供应商 纳税人标识、纳税人登记编号字段
  2. 为何BTC在逆势中上涨?残酷而持久的熊市里,仍存在变数
  3. Java语言 for循环打印各种简单几何图形
  4. 百付宝携手瑞星 打造零风险支付平台
  5. 中孚实业跨界“掘金”云计算
  6. oracle sum函数返回空,关于SQL语句中SUM函数返回NULL的解决办法
  7. 资源整合做到无中生有,让用户自发宣传,轻松实现躺赚赚钱!
  8. js破解 微博登录参数
  9. mysql 改成无密码登录_mysql修改密码
  10. 坚持#第301天~问题释放、释怀经验