打开每个Window窗体作为MdiParent的子窗口

时间:2013-04-02 10:59:08

标签: c# .net

我的MdiParent表格有MenuSubmenu 如果我使用以下代码使用子菜单选项打开表单B ,则父表单为表单A

B addbill = new B();
B.Show();
B.MdiParent = this;

作为表格A 的孩子,打开表格B 。现在,我想点击表格B 上的按钮,然后表格B ,从表格B 打开表格C 已关闭且表单C 将作为表单A 的子项打开 再次点击表单C 上的点击按钮后,表单C 将关闭,表单B 将以表单A 打开

那么我该怎么办呢?

6 个答案:

答案 0 :(得分:6)

在表单按钮上单击事件编写此代码:

 FormC fc=new FormC();
 fc.MdiParent=this.MdiParent;
 fc.Show();

在Form load事件中编写此代码:

FormB fb=new FormB();
fb.Hide();
fb.Close();

答案 1 :(得分:0)

在B关闭之前

C.MdiParent = B.MdiParent; // which is pointing to A

答案 2 :(得分:0)

在表单B按钮中单击要调用表单C的位置,您必须将FormB的MdiParent指定为FormA的FormC的MdiParent。之后,您可以关闭FormB。

// FormB按钮单击

private void button1_Click(object sender, EventArgs e)
        {
            FormC frm = new FormC();
            frm.MdiParent = this.MdiParent; // assign MdiParent of FormB to FormC
            frm.Show();
            this.Close();
        }

答案 3 :(得分:0)

    private void button1_Click(object sender, EventArgs e)
    {

        Analysis an = new Analysis();//on login click open anothe form on same perrent
        an.MdiParent = this.MdiParent;
        an.Show();


    }

答案 4 :(得分:0)

它的工作......试试这个代码

 private void btCountSale_Click(object sender, EventArgs e)
    {
        bool exist = false;
        foreach (Form f in Application.OpenForms)
        {
            if (f.Text == "Counter Sale")
            {
                exist = true;
                f.BringToFront();
                break;
            }
        }
        if (exist == false)
        {
            frmCounterSale fm = new frmCounterSale();
            fm.MdiParent = this.MdiParent; 
            fm.Show();
        }
    }

答案 5 :(得分:0)

它的工作......试试这个代码

 private void btCountSale_Click(object sender, EventArgs e)
    {
        bool exist = false;
        foreach (Form f in Application.OpenForms)
        {
            if (f.Name== "frmCounterSale")
            {
                exist = true;
                f.BringToFront();
                break;
            }
        }
        if (exist == false)
        {
            frmCounterSale fm = new frmCounterSale();
            fm.MdiParent = this.MdiParent; 
            fm.Show();
        }
    }