向tabcontrol中添加form

昨天花了一天的时间去找一个错误,关系是这样的,我添加一个tabcontrol就叫tc1好了,然后在tc1中再动态添加一个父窗体l叫form1,要把form1添加进tabcontrol就要先新建一个tabpage,然后把form1添加到tabpage的controls中,如tabpage.controls.add(form1);然后再将tabpage添加到tabcontrol中,接着要在form1中再添加一个包含叫tc2的tabcontrol,tc2中包含一个窗体form2,以下是包装的方法:

public TabPage Add(Form form)
        {
            form.Visible = true;
            form.TopLevel = false;
            form.Dock = DockStyle.Fill;
            form.FormBorderStyle = FormBorderStyle.None;
            TabPage page = new TabPage();
            page.Controls.Add(form);
            form.Show();
            this.Controls.Add(page);
            return page;
        }

 

开始添加不了一直报错,说是不能讲一个顶级窗体添加到其他控件中,原来是form的toplevel属性需要设置称false才能添加进tabcontrol中,接着继续。

 

又遇到一个问题,虽然窗体属性visiable设置为true,窗体还是没在tabcontrol中显示,原因是在把form添加进tabcontrol的tabpage后,需要手动调用show()方法才能将窗体显示在tabpage中。

 

接着又有问题,以上步骤都没问题,重点到了,我竟然在把tc2添加到tc1的时候疏忽了,没有把窗体的show()调用,导致后面的都不能显示出来。

转载于:https://www.cnblogs.com/cellphoneyeah/p/5457490.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值