如何在C#中保存以前打开的表单?

时间:2011-05-30 18:48:19

标签: c# winforms

我有两种形式,例如form1和form2 form1是父窗体,从form1 im调用form2并显示它,但问题是当第二个窗体“form2”被打开时,前一个窗体将处于非活动状态? 请告诉我如何同时激活多个表单。

5 个答案:

答案 0 :(得分:2)

您可能希望使用Form.Show()代替Form.ShowDialog()。第一个将沿着另一个显示一个表单,而另一个将“暂停”第一个表单,直到您关闭第二个表单。

答案 1 :(得分:2)

使用

Form.Show()

而不是

Form.ShowDialog()

答案 2 :(得分:2)

将form2的TopMost属性设置为true 然后使用form2.Show()而不是ShowDialog()

OR 你可以像我做的那样在另一个线程中打开表单2

    private void ShowForm2()
        {
            new Form2().ShowDialog();
        }


        private void button3_Click(object sender, EventArgs e)
        {
            System.Threading.Thread th = new System.Threading.Thread(new System.Threading.ThreadStart(ShowForm2));
            th.Start();
        }

答案 3 :(得分:1)

你是如何展示你的第二张表格的?听起来你是以模态的方式展示它 - 你不想这样做!

答案 4 :(得分:0)

将此代码复制并粘贴到第二个表单类中:

    protected override bool ShowWithoutActivation {
        get {
            return true;
        }
    }