管理系统开发四: 在主窗体中嵌入子窗体的实现

如果一直跟着前几个文章的话 现在基本上应该能做到这种程度

 我们知道窗体显示 直接show就好了 但是 show出来的是独立的窗体 并不是镶嵌在主窗体里

1.创建一个窗体 添加两个panel 一个左边 装标题。一个右边 装子窗体。

管理系统开发四: 在主窗体中嵌入子窗体的实现_第1张图片

2.创建两个辅助方法,一个负责打开窗体,一个负责关闭窗体。

 My_SeQuAdd objFrom = new My_SeQuAdd();   ----new 出来子窗体

objFrom.TopLevel = false;//将当前子窗体设置成非顶级控件 级别太高的话 会嵌不进去。

objFrom.WindowState = FormWindowState.Maximized;//最大化 

objFrom.FormBorderStyle = FormBorderStyle.None;//去掉边框
            objFrom.Parent = this.panel2;//将刚刚的 panel2设置为新建窗体的父类  嵌入里面
            objFrom.Show();//进行显示

关闭窗体就是循环父类panel2的所有form 进行关闭。

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace StudentManager
{
    public partial class My_SeQuTitle : Form
    {
        public My_SeQuTitle()
        {
            InitializeComponent();
        }
        private void My_SeQuTitle_Load(object sender, EventArgs e)
        {
            CloseForm();
            My_SeQuAdd objFrom = new My_SeQuAdd();
            OpenForm(objFrom);
        }
        private void btn新建社区_Click(object sender, EventArgs e)
        {
            CloseForm();
            My_SeQuAdd objFrom = new My_SeQuAdd();
            OpenForm(objFrom);
        }
        private void btn查询社区_Click(object sender, EventArgs e)
        {
            CloseForm();
            My_SeQuQuery objFrom = new My_SeQuQuery();
            OpenForm(objFrom);
            //Form1.GetFrom().Show();
        }

     
        /*********************************************************************辅助功能******************************************************************************/
        /// 
        /// 打开窗体
        /// 
        /// 
        public void OpenForm(Form objFrom)
        {
            objFrom.TopLevel = false;//将当前子窗体设置成非顶级控件
            objFrom.WindowState = FormWindowState.Maximized;//最大化
            objFrom.FormBorderStyle = FormBorderStyle.None;//去掉边框
            objFrom.Parent = this.panel2;//父类
            objFrom.Show();
        }

        /// 
        /// 关闭窗体
        /// 
        public void CloseForm()
        {
            foreach (Control item in this.panel2.Controls)
            {
                if (item is Form)
                {
                    Form objControl = (Form)item;
                    objControl.Close();
                    this.panel2.Controls.Remove(item);
                }
            }
        }

  
    }
}

预祝成功!!!!!!!!!

下一章  管理开发系统五:winform连接数据库查询 使用DataGridView展示查询结果

管理系统开发一: winform连接sql数据库 https://blog.csdn.net/m0_37583098/article/details/88546146

管理系统开发二: winforml登录界面sql数据查询和修改 https://blog.csdn.net/m0_37583098/article/details/88547123

管理系统开发三: winforml录入界面 https://blog.csdn.net/m0_37583098/article/details/88547805

管理系统开发四: 在主窗体中嵌入子窗体的实现 https://blog.csdn.net/m0_37583098/article/details/88549151

管理开发系统五:winform连接数据库查询 使用DataGridView展示查询结果 https://blog.csdn.net/m0_37583098/article/details/88549461

管理开发系统六:winform连接数据库修改 https://blog.csdn.net/m0_37583098/article/details/88550157

管理开发系统七:winform连接数据库删除 https://blog.csdn.net/m0_37583098/article/details/88578796

管理开发系统八:winform导出excel https://blog.csdn.net/m0_37583098/article/details/88579043

管理开发系统九:winform带sql数据库导出 https://blog.csdn.net/m0_37583098/article/details/88580311

sql service 常用语句基础https://blog.csdn.net/m0_37583098/article/details/87876264

你可能感兴趣的:(数据库)