C#,如何一致地将表格带到前面?

时间:2012-05-09 22:41:51

标签: c#

我有一个MainForm类实例, 我提出了另一种形式;

InputForm MyInput= new InputForm("Enter a Number");
MyInput.ShowDialog();

我从这个内部关闭MyInput形式;

    private void Button_Click(object sender, EventArgs e)
    {
        //Do things here
        this.Hide();

    }

Flow继续在MainForm中使用

this.Show();

this.Activate();

两者都不会将MainForm一直带到前面。 我怎么能这样做?

2 个答案:

答案 0 :(得分:2)

您需要做的就是像这样显示您的InputForm。这种ShowDialog形式将所有者分配给您的对话框。

DialogResult dr = MyInput.ShowDialog(this);
//test for result here

MyInput.Close();

答案 1 :(得分:0)

this.Hide()似乎隐藏了主要表单,而不是输入。因为ShowDialog是一种阻塞方法,所以InputForm需要由用户操作,InputForm内部代码或其他线程关闭。