虽然有 TabControl控件, 但是为了减少主窗体的代码量, 可以将部分分页的功能模块放置于一个 Form 中, 当调用时, 直接把这个 Form嵌入到一个 Panel中即可.

示例如下:

要嵌入的 Form:

publicpartialclassFormEmbed : Form
    {
publicFormEmbed()
        {
            InitializeComponent();
        }
privatevoidbutton1_Click(objectsender, EventArgs e)
        {
this.Hide();//不能调用 Close 方法, 因为 Close 后Form被释放,就不能再次Show}
    }

主窗体中放置一个容器Panel(或者 TabControl的 TabPage):

privateFormEmbed frmEmbed=newFormEmbed();//全局变量publicForm1()
        {
            InitializeComponent();
        }
//显示privatevoidbutton1_Click(objectsender, EventArgs e)
        {
if(frmEmbed!=null)
            {
                frmEmbed.FormBorderStyle
=FormBorderStyle.None;//无边框frmEmbed.TopLevel=false;//不是最顶层窗体panel1.Controls.Add(frmEmbed);//添加到 Panel中frmEmbed.Show();//显示}
        }
//隐藏privatevoidbutton2_Click(objectsender, EventArgs e)
        {
if(frmEmbed!=null)
            {
                frmEmbed.Hide();   
           }
        }

url:http://greatverve.cnblogs.com/archive/2011/07/11/panel-form.html

转载于:https://www.cnblogs.com/greatverve/archive/2011/07/11/panel-form.html

C# WinForm技巧“将Form嵌入到Panel”相关推荐

  1. 在WinForm应用程序中嵌入WPF控件(转)

      我们知道,在WPF界面上添加WinForm的控件需要使用WindowsFormHost类.而在WinForm界面上添加WPF控件该如何做呢?有没有类似的类呢?明显是有的,ElementHost就是 ...

  2. WinForm在窗体中嵌入窗体

    WinForm在窗体中嵌入窗体WinForm在窗体中嵌入窗体WinForm在窗体中嵌入窗体 Form1.cs SubForm 代码 using System; using System.Collect ...

  3. C# Winform WPF DeskBand 窗体嵌入任务栏,在任务栏显示文字

    C# Winform WPF DeskBand 窗体嵌入任务栏,在任务栏显示文字 原文:C# Winform WPF DeskBand 窗体嵌入任务栏,在任务栏显示文字 最近写了个小程序,用于将固态硬 ...

  4. (winform)在一个form里面显示google地图

    一个windows form,里面显示google地图,可以放大,缩小,拖动操作,最好有代码例子!对webbrowser控件的使用不是很熟练. 回复:(winform)在一个form里面显示googl ...

  5. 前端html小技巧(form篇):复选框、单选按钮的使用

    今天分享下"前端html小技巧(form篇):复选框.单选按钮的使用"这篇文章,文中根据实例编码详细介绍,或许对大家的编程之路有着一定的参考空间与使用价值,需要的朋友接下来跟着云南 ...

  6. winform 中自定义有透明度的panel,可用于加载遮盖层

    在winform 中自定义有透明度的panel,可用于加载遮盖层,代码如下: public class ExtendedPanel : Panel{private const int WS_EX_TR ...

  7. 在delphi Form窗体的panel 中嵌入 Fmx窗体

    1.创建2个工程,一个是window application ,一个bpl 工程(multi-device Forml),创建方式见: 在delphi Form窗体调用Fmx窗体_zjg076000的 ...

  8. C# WinForm 技巧四:COMBOBOX搜索提示

    comboBox和textBox支持内置的搜索提示功能, 在form的InitializeComponent()中添加如下语句:    this.comboBox1.AutoCompleteCusto ...

  9. Winform窗口里的嵌入WPF的UserControl,关闭Winform父窗体的方法

    可以在form_load事件里把this传给UserControl,然后在usercontrol里调用form的各种方法,不过这种做法不太好,耦合性较高.标准做法是用事件传递 UserControl里 ...

  10. WinForm使用CefSharp,嵌入浏览器

    引入库:CefSharp.WinForms using CefSharp; using CefSharp.WinForms; using System; using System.Collection ...

最新文章

  1. Android Studio 第五十期 - 自定义TabLayout
  2. UA SIE545 优化理论基础1 凸分析1 线性流形与超平面
  3. linux 记事本程序,Linux记事本操作
  4. Ehcache小结(二)
  5. 强大的Qtstylesheet
  6. pyqt5 tablewidget 设置行高_Python+PyQt5基础开发(10)
  7. svn服务器端上传已有项目,「svn上传新项目」怎么添加新项目到SVN服务器...
  8. 基于java的在校大学生贷款管理系统
  9. 快速获取InputBox选中区域的单个单元格引用地址
  10. 软件工程(3)微信抢票实验个人总结
  11. 解决jest处理es模块
  12. 最健康的程序员作息表
  13. mybatis一级缓存、二级缓存以及集成EnCache、Redis,避免脏读
  14. 前端(内部)-编程规约
  15. 点到平面的距离(最短距离)
  16. 大计基笔记(1)数学运算
  17. ASP.NET是什么?与.NET有什么关系
  18. linux平台的字典,Linux系统中安装CLI的字典sdcv
  19. 计算机平面设计必学英语,40个Fireworks学习英文教程
  20. 数字图像处理艺术化效果——怀旧效果(泛黄旧照片)

热门文章

  1. POST 和GET传输的最大容量分别是多少?
  2. 【Gym-101908 L】Subway Lines【树上两条路径交】
  3. 网易2018校招内推编程题 小易喜欢的数列
  4. 利用 python 批量修改文件名
  5. latex 常用学习/模板/公式输入网站合集
  6. php背景图片居中对齐命令,css怎么设置背景图片自适应居中
  7. 超级易懂的非递归实现二叉树三种遍历(与网上都不一样)
  8. mysql sql slave skip_MySQL的一次错误处理 SQL_SLAVE_SKIP_COUNTER
  9. python二级基础题,计算机二级python部分基础操作题
  10. 互相引用 spring_Spring-bean的几种循环依赖方式