如何隐藏主窗体中的表单

时间:2011-10-26 14:58:07

标签: c# winforms animation

我一整天都在调整我的程序,我在隐藏一个会弹出“请等待”的表单时遇到问题

例如:

    private void button12_Click(object sender, EventArgs e)
    {
        form2 wait = new form2();
        pw.Show();
    }
    private void button13_Click(object sender, EventArgs e)
    {
        form2 wait = new form2();
        pw.Hide();
    }

这不起作用,虽然我确信这不是休闲C#程序员的新闻。有没有一种简单的方法来做我正在尝试的事情?我尝试过在线搜索,虽然我不是100%确定他们想要做什么,但我确实找到了一些东西。我打算找一个给你看的例子,但我关闭了页面 - 典型。但是我认为他们试图覆盖整个节目并让你用bool控制.show?

1 个答案:

答案 0 :(得分:4)

代码无法按预期运行,因为form2内的button12_Clickform2内的button13_click不同。请注意,您使用new关键字两次。所以在button13_click中,您正在创建一个新的form2,然后隐藏它,即使您还没有显示它!

相反,您可以创建一个form2实例,以便在两种方法之间共享:

//define this code outside both of the methods below
form2 _waitForm = new form2();

private void button12_Click(object sender, EventArgs e)
{
    _waitForm.Show();
}
private void button13_Click(object sender, EventArgs e)
{
    //this will hide the same form2 that was shown in button12_Click
    _waitForm.Hide();
}