C# WinForm技巧“将Form嵌入到Panel”

C# 使用Panel控件实现在一个窗体中嵌套另一个窗体 准备步骤:     1. 创建一个Windows应用程序     2. 把默认窗口的名字为Form1(如上图)     3. 创建一个Windows窗体,为Form2(如上图)     4. 在Form1窗口中增加一个按钮button,然后增加一个Panel,双击按钮在按钮里面写事件(如下图) 双击button按钮进入点击事件 添加下代码如图 private voi... 阅读详情
 

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

示例如下:

要嵌入的 Form:

 

     public   partial   class  FormEmbed : Form
    {
        
public  FormEmbed()
        {
            InitializeComponent();
        }
        
private   void  button1_Click( object  sender, EventArgs e)
        {
            
this .Hide();  //  不能调用 Close 方法, 因为 Close 后Form被释放,就不能再次Show
        }
    }

 

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

  private  FormEmbed frmEmbed  =   new  FormEmbed();  //  全局变量
         public  Form1()
        {
            InitializeComponent();
        }
         
//  显示
         private   void  button1_Click( object  sender, EventArgs e)
        {
            
if  (frmEmbed  !=   null )
            {
                frmEmbed.FormBorderStyle 
=  FormBorderStyle.None;  //  无边框
                frmEmbed.TopLevel  =   false ;  //  不是最顶层窗体
                panel1.Controls.Add(frmEmbed);   //  添加到 Panel中
                frmEmbed.Show();      //  显示
            }
        }
       
//  隐藏     
         private   void  button2_Click( object  sender, EventArgs e)
        {
            
if  (frmEmbed  !=   null )
            {
                frmEmbed.Hide();   
           }
        }
 
C# WinForm 在Panel中添加Form 教程+源码 C# WinForm 在Panel中添加Form 教程+源码 可以像MDI窗体那个进行操作,用于解决界面美化过程中的MDI窗体, 新式弹窗.学习一下,绝对有用 C# winform必学 立即下载

相关推荐

winform窗体中嵌入网页(DHTML代码和winfrom应用程序交互)

C#winform 窗体与Webbrowser控件的相互交互

C#中TabControl控件的使用

选项卡控件(TabControl控件)可以添加多个选项卡,然后在选项卡上添加子控件。这样就可以把窗体设计成多页,使窗体的功能划分为多个部分。选项卡中可包含图片或其他控件。选项卡控件还可以用来创建用于设置一组相关属性的属性页。图11.44显示了TabControl控件。TabControl控件包含选项卡页,TabPage控件表示选项卡,TabControl控件的TabPages属性表示其中的所有TabPage控件的集合。TabPages集合中TabPage选项卡的顺序反映了。

wenchm的博客 1万+

告别第三方插件:官方Fused Library如何重塑Android库的合并与发布流程

本文详细介绍了Android官方推出的Fused Library如何替代第三方fat-aar插件,优化Android库的合并与发布流程。通过原生支持、智能依赖管理等优势,Fused Library解决了版本兼容性、依赖传递等核心痛点,提供了更稳定高效的开发体验。文章还提供了迁移实操指南和工程实践建议,帮助开发者顺利过渡到官方方案。

weixin_42561040的博客 254

c#中使用TableLayoutPanel布局,显示子Form

建立Form的工程,界面显示是这样的 其中Form1是父Form,Form2是子Form 设计视图如下 其中,form2要把一些外观属性如是否显示icon 等设为False 在Form1中,给tableLayoutPanel1;的右下角加入1*1的容器普通panel,命名为panel1 将 private System.Windows.Forms.Panel panel1;改为 private PanelEx panel1;//PanelEx是自己扩展的Panel类型 添加F...

blue_xinran的博客 1497

ABA分析方法 — 软硬件开发必备的一种分析问题绝佳套路

可能你从很多地方听过这个名词,无论是在软件开发还是硬件领域(比较典型的领域:汽车、消费电子、医疗等行业),ABA验证都是一种快速分析故障的一个方法,第一次听到这个词,当时是不是一脸懵逼,本文就深度带你了解下ABA的分析方法。简要概述就是:怀疑A模块导致系统故障,将B模块替换A模块,故障消失,再将A模块替换回来,故障复现,则说明A模块是导致系统故障的原因其实,ABA分析问题,可能很多人在工作中都或多或少用过这个方法,只是没有这个概念,说明白了就是控制变量和对比验证,没什么高大上的东西。

Eureka1024的博客 7331

AutoSAR实战:手把手教你配置PNC(Partial Network Cluster)实现精准休眠与唤醒

本文详细介绍了如何在AutoSAR中配置PNC(Partial Network Cluster)实现精准休眠与唤醒,通过DaVinci Configurator工具逐步指导,结合ComM模块的协同调试,优化车载电子系统的能耗管理。文章包含实战步骤、常见错误排查及功耗优化数据,适合汽车电子开发工程师参考。

weixin_33725239的博客 466

TabPage中添加Form

动态生成了TabPage,现在需要把表单添加到TabPage中,实现TabPage一生成就自动加载设计好的表格,步骤如下:1、首先新建一个窗体(FrmLeave),将需要的表单在其中设置好;2、在需要显示FrmLeave这个表单的动态生成的TabPage中,添加如下代码: FrmLeave frmLeave = new FrmLeave(); //控件...

Tiger_shl的博客 3745

验证(uvm常见问题)--子类和父类的句柄和对象问题

sv中的子类和父类 在sv中,有如下两个类,child继承于parent。然后在test module中,正确转换的方法如下面所示。其中c1,c2,p1 都指向了同一个子类的对象c1。总结如下: 一个子类的对象是包括子类的成员变量,方法和父类的成员变量,方法。 子类的句柄c1可以直接赋值给父类的句柄p1,此时p1只可以访问父类的成员变量和方法,或者子类的虚方法,比如下面调用p1.display是...

q876507447的博客 7633

Winform窗体使用tabControl控件填充窗体并且可以关闭

如图: 部分代码: /// <summary> /// 添加新的page页 /// </summary> /// <param name="str">页标题</param> /// <param name="myForm">需要打开的窗体</p

u012408847的博客 5753

《最游记》游戏开发全栈指南:从源码解析到实战部署

本文提供了一份详尽的《最游记》游戏源码全栈开发指南。文章深入解析了这款3D玄幻网游的完整源码结构,涵盖客户端、服务端、引擎和工具链,并提供了从环境搭建、核心模块解析到实战修改与部署的完整流程。对于希望深入理解MMORPG架构的开发者而言,这份指南是宝贵的实战资源。

weixin_28363123的博客 71

I2C 协议在 Camera Sensor 驱动中的典型配置方式与实战应用

在 Linux Camera 系统中,Sensor 与主控之间的控制信令几乎都依赖于 I2C 总线完成。I2C 协议不仅承载了 Sensor 初始化、模式切换、AE/AF 等关键功能的指令传输,也是构建 v4l2\_subdev 驱动框架的核心基础。本文将围绕 Sensor 驱动中的 I2C 通信机制展开分析,从设备树节点声明到驱动代码中的传输接口调用,结合主流平台工程实战经验,详解如何构建稳定、高效、可维护的 I2C 控制路径。

努力分享一些人工智能、计算机视觉、影像等相关的知识干货! 1713

ZeroClaw执行机制:Rust嵌入式具身智能体的确定性运行链

具身智能体的‘代码执行’本质是物理世界动作的确定性映射,其核心在于时间确定性、内存确定性与语义确定性三者统一。Rust凭借no_std、async/await协程调度和所有权模型,成为构建高实时嵌入式智能体的首选语言;而ESP32-Rust开发则通过cortex-m-rt、embassy-executor与embedded-hal抽象,将高层指令精准转化为GPIO翻转、PWM输出等硬件行为。这种从SkillExecutor状态机到寄存器写入的全栈可控链路,支撑了力控闭环、急停响应等工业级需求。ZeroCla

weixin_34416754的博客 315

【无人机路径规划】基于强化学习实现多无人机路径规划

【无人机路径规划】基于强化学习实现多无人机路径规划

k8291121的博客 1656

WinForm中如何实现嵌入form窗体(panel与子窗体)

今天在做项目时候遇到一个问题,窗体分为左右两部分,要求在左边栏点击按钮时,右边动态加载窗体 最后想到用panel实现,经历几次失败,并查找资料后,终于搞定 说明:如果多次切换需加入 panel.clear();清空原有panel内容 环境:C# VS2008 方法一:通过给panel加载子元素实现 Form2 form = new Form2(); form.FormBor

duanwenzhi00的专栏 1万+

15、目标检测模型的评估指标与YOLO算法解析

本文详细解析了目标检测模型的评估指标,包括精确率、召回率、AP、mAP及IoU的定义与作用,并深入介绍了YOLO算法的核心原理与推理流程。从网格划分、锚框引入到边界框细化与后处理,全面阐述了YOLO如何实现快速准确的目标检测。同时总结了YOLO在智能安防、自动驾驶和工业检测等领域的应用,并展望了其未来在准确性提升、多类别支持和技术融合方面的发展趋势。

work3的博客 65

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

C# WinForm中将Form显示在Panel中(C#)

当我们在做WinForm的程序时,总是要弹出一些窗体,但弹出窗体看起来效果都不是很好,特别是弹出的窗体很多时,这时候就会影响整个软件的用户体验.所以还是要尽量的避免弹出窗体.我们可以用这样的方法来解决此问题,将父窗体作为容器,将字窗体显示到父窗体中,而不是作为弹出窗体.将弹出窗体显示在父窗体中,可在父窗体中加入一个Panel(或其他容器控件),然后将要弹出的窗体作为Panel的控件显示到P

任游.Abraham.Wei.rEny0u.pRince 1万+

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

C# 将Form显示在Panel中

当我们在做WinForm的程序时,总是要弹出一些窗体,但弹出窗体看起来效果都不是很好,特别是弹出的窗体很多时,这时候就会影响整个软件的用户体验.所以还是要尽量的避免弹出窗体. 我们可以用这样的方法来解决此问题,将父窗体作为容器,将字窗体显示到父窗体中,而不是作为弹出窗体. 将弹出窗体显示在父窗体中,可在父窗体中加入一个Panel(或其他容器控件),然后将要弹出的窗体作为Panel的控件显示到Pan...

qq_42500186的博客 1274

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

Form嵌入到Panel里(C#)

虽然有 TabControl控件, 但是为了减少主窗体的代码量, 可以将部分分页的功能模块放置于一个 Form 中, 当调用时, 直接把这个 Form嵌入到一个 Panel中即可. 示例如下: 要嵌入的 Form: public partial class FormEmbed : Form { public FormEmbed() {...

weixin_30360497的博客 142

在panel中显示一个新的form

在一个panel中显示新的form 说明:控件formDemo(form),panelDemo(panel) 分析:由于from是顶级控件,而panel并不是,所以直接调用 panelDemo.Controls.Add(fromDemo)会导致错误。先设定fromDemo不是顶级控件,然后再放置到panelDemo中才可以。...

weixin_34279061的博客 302
上一篇: 操作xml文件类
下一篇: oracle 备份还原
andycode
博客等级 码龄17年 12粉丝 80原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值