如何在不关闭的情况下切换表单

时间:2015-03-18 08:02:34

标签: c# winforms browser

我有一个C#应用程序,它使用不同的形式。我知道如何使用以下示例在表单之间切换:

{
    Form1 login;
    login = new Form1();
    login.Show();
    this.Hide();  
}

我的一个表单包含一个Web浏览器。如何在不关闭Web浏览器的情况下在Web浏览器表单和其他表单之间切换,以便网页上的会话不会关闭?

我试过隐藏表单,但我不知道如何在不使用上述代码的情况下再次打开它。

请帮忙!

2 个答案:

答案 0 :(得分:0)

免责声明:我假设你的另一张表格上有一个按钮,可以再显示第一张。

您可能缺少的是您在webbrowsers表单中对第一个表单的引用,您可以在构造函数中传递该表单。

Form1 myForm

public WebBrowserForm(Form1 myForm)
{
    myForm = myForm;
}

然后,此表单上的按钮可以再次显示myForm(myForm.Show()并隐藏,如果需要)

在第一个表单上,您需要将变量login移到类中,以便再次引用它

Form1 login = new Form1();

{
    login.Show();
    this.Hide();
}

答案 1 :(得分:0)

假设WebBrowserForm是包含WebBrowser的表单名称

if (Application.OpenForms["WebBrowserForm"] != null)
      (Application.OpenForms["WebBrowserForm"] as Form).Show();

此代码检查之前已经过实例化的WebBrowser表单,如果它不为空则显示它