在事件Form_Load中混淆

时间:2013-10-29 12:57:55

标签: c# .net winforms form-load

private void Form1_Load(object sender, EventArgs e)
    {
        MessageBox.Show("Luanching.... This may take a few second");
............
    }

如果我没有在消息框中单击“确定”,我将不会显示 (它会等到我点击) 如何解决这个问题 如何使表单首先显示或如何制作不等待单击确定

4 个答案:

答案 0 :(得分:2)

另一个选择是在表单上放置一个backgroundworker。然后在事件中,双击“然后在代码中创建的方法中的'DoWork',放置messagebox.show。 这样,消息框显示在一个单独的线程中,表单的加载将继续

答案 1 :(得分:1)

简单,只需将MessageBox代码移动到Shown事件

即可
private void Form1_Shown(object sender, EventArgs e)
{
    MessageBox.Show("Luanching.... This may take a few second");
}

答案 2 :(得分:0)

您不需要使用MessageBox,您必须创建一个显示消息的新Form。 新的Form将在新的消息循环上运行,因此如果将其称为

,则不会阻止ui

myForm.Show(),其中myForm是您表单的实例。

答案 3 :(得分:0)

事件Form1_Load很明显,所以如果你在那里插入某种MessageBoxForm只会在响应之后加载

Form加载后,请考虑使用其他方法。