C# MdiLayout.TileVertical不';我不能正常工作

C# MdiLayout.TileVertical不';我不能正常工作,c#,mdi,C#,Mdi,我在C#中使用了MDI表单来显示多个窗口。当我使用MdiLayout.TileVertical更改子窗口的布局时,我无法得到正确的结果。子窗口没有垂直显示 我想要的结果是: 一, 二, 三, 四, 我得到的是: 3.1 4.2 我的代码来源: [STAThread] static void Main() { Application.Run(new Form1()); } private void menuItemNew_

我在C#中使用了MDI表单来显示多个窗口。当我使用MdiLayout.TileVertical更改子窗口的布局时,我无法得到正确的结果。子窗口没有垂直显示

我想要的结果是:

一,

二,

三,

四,

我得到的是:

3.1

4.2

我的代码来源:

[STAThread]
    static void Main() 
    {            
        Application.Run(new Form1());
    }

    private void menuItemNew_Click(object sender, System.EventArgs e)
    {
        oFileDlg.CheckFileExists=true;
        oFileDlg.CheckPathExists=true;
        oFileDlg.Title="Open File - MDI Sample";
        oFileDlg.ValidateNames=true;
        oFileDlg.Filter = "jpg files (*.jpg)|*.jpg";

        if (oFileDlg.ShowDialog() == DialogResult.OK)
        {   
            try
            {
                //Create a new instance of the MDI child template form
                Form2 chForm = new Form2();
                //set parent form for the child window
                chForm.MdiParent=this;

                //increment the child form count
                count ++;
                //set the title of the child window.
                chForm.Text= "Child - " + count.ToString();

                chForm.fileloc=oFileDlg.FileName;

                chForm.FormBorderStyle = FormBorderStyle.Sizable;

                //display the child window
                chForm.Show();                  
            }
            catch(Exception ex)
            {
                MessageBox.Show(ex.ToString(), "MDI Sample", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
    }

    private void menuItemClose_Click(object sender, System.EventArgs e)
    {
        //Gets the currently active MDI child window.
        //Form a = this.ActiveMdiChild;
        //Close the MDI child window
        //a.Close();

        this.Close();
    }       

    private void menuItemAI_Click(object sender, System.EventArgs e)
    {
        //Arrange MDI child icons within the client region of the MDI parent form.
        this.LayoutMdi(System.Windows.Forms.MdiLayout.ArrangeIcons);
    }

    private void menuItemCas_Click(object sender, System.EventArgs e)
    {
        //Cascade all child forms.
        this.LayoutMdi(System.Windows.Forms.MdiLayout.Cascade);
    }

    private void menuItemHoriz_Click(object sender, System.EventArgs e)
    {
        //Tile all child forms horizontally.            
        this.LayoutMdi(System.Windows.Forms.MdiLayout.TileHorizontal);

    }

    private void menuItemVert_Click(object sender, System.EventArgs e)
    {           
        //Tile all child forms vertically.
        //CheckWindows();
        this.LayoutMdi(System.Windows.Forms.MdiLayout.TileVertical);
    }

    private void menuItemMax_Click(object sender, System.EventArgs e)
    {
        //Gets forms that represent the MDI child forms 
        //that are parented to this form in an array
        Form [] charr= this.MdiChildren;

        //for each child form set the window state to Maximized
        foreach (Form chform in charr)
            chform.WindowState=FormWindowState.Maximized;
    }

    private void menuItemMin_Click(object sender, System.EventArgs e)
    {
        //Gets forms that represent the MDI child forms 
        //that are parented to this form in an array
        Form [] charr= this.MdiChildren;

        //for each child form set the window state to Minimized
        foreach (Form chform in charr)
            chform.WindowState=FormWindowState.Minimized;
    }

    private void menuItem1_Click(object sender, System.EventArgs e)
    {
        //Gets forms that represent the MDI child forms 
        //that are parented to this form in an array
        Form [] charr= this.MdiChildren;

        //for each child form set the window state to Minimized
        foreach (Form chform in charr)
            chform.Close();
    }

对这个问题有什么想法吗

您可以尝试在子窗体上进行停靠,并选择所需的输出


例如:chForm.Dock=DockStyle.Left

嗨,球鲨!你能不能把它简化为。嗨,鲍尔沙克,当你只有3张表格的时候,它是如何安排的?@AnoopJ是的,如果只有3张表格,它工作得很好。