zoukankan      html  css  js  c++  java
  • 在C#中使用Panel控件实现在一个窗体中嵌套另一个窗体

    在C#中使用Panel控件实现在一个窗体中嵌套另一个窗体
    ShowAllPage sAllPage = new ShowAllPage();
              //  sAllPage.FormBorderStyle = FormBorderStyle.None;
               // sAllPage.Dock = DockStyle.Fill;
                sAllPage.TopLevel = false;
                this.MainPanel.Controls.Clear();
                this.MainPanel.Controls.Add(sAllPage);
                sAllPage.Show();

    MainPanel为主窗体中的Panel控件,ShowAllPage为要在主窗体中显示中Panel中的窗体.

    --------------------------------------------------------------------------------------------------------------------------------------------------------------------

    FormBorderStyle 属性设置新窗体的边框样式
    Dock属性获取或设置哪个边框停靠到父框体并确定如何随父框体一起调整大小
    这两项属性可不加

    但是用一个最简单的方法来说,就是使用MDI
    首先,父窗口要设置IsMdiContainer属性为True。实现MDI结构的父子窗口套用
    然后在窗口跳转处改为如下代码:
    例:一般跳转:Form1 f=new Form();
                                     F.Show();
    改为:
    Form1 c = new Form1();
                c.MdiParent = this;
                c.Show();
    不过这样有时会遇到一个问题,就是子窗体在跳出的时候会以父窗体的0,0坐标为准,所以在父窗体中如果有菜单栏的话,子窗体会被遮盖上,那么我们就在子窗体的Form_Load()中加上一句话来设置它与窗体上边缘的距离
    this.Top = 100;
    这样就完成了一个窗体在另一个窗体中的嵌套

  • 相关阅读:
    bzoj2946 [Poi2000]公共串(SA,SAM)
    77 最长公共子序列
    C++ lower_bound 与 upper_bound 函数
    76 最长上升子序列
    75 寻找峰值
    C++标准输入问题
    74 第一个错误的代码版本
    73 前序遍历和中序遍历树构造二叉树
    72 中序遍历和后序遍历树构造二叉树
    71 二叉树的锯齿形层次遍历
  • 原文地址:https://www.cnblogs.com/lmcblog/p/2603646.html
Copyright © 2011-2022 走看看