C# 打开FormMain(MDI)后关闭登录表单

C# 打开FormMain(MDI)后关闭登录表单,c#,winforms,C#,Winforms,我有一个链接到数据库的登录表单,当登录成功时,它会打开我的FormMain,这是一个MDI表单 我的程序中有以下代码。cs: FormLogin formLogin = new FormLogin(); if (formLogin.ShowDialog() == DialogResult.OK) { Application.Run(new FormMain()); } else { Application.Exit(); } 我想实现的是,一旦打开FormMain,它就应该关闭

我有一个链接到数据库的登录表单,当登录成功时,它会打开我的
FormMain
,这是一个MDI表单

我的程序中有以下代码。cs:

FormLogin formLogin = new FormLogin();
if (formLogin.ShowDialog() == DialogResult.OK)
{
    Application.Run(new FormMain());
}
else
{
    Application.Exit();
}
我想实现的是,一旦打开
FormMain
,它就应该关闭登录表单。在主窗体打开之后,您可以alt tab并再次转到登录窗体。我尝试添加
formLogin.Close()
应用程序之前。运行..
但不成功


谢谢你抽出时间

根据实现方式,您可以隐藏登录表单,尽管根据当前的方式,您可以使用其他方法关闭它。另一个选项是在新线程中打开主窗体并关闭当前线程。这将完全关闭登录页面,并将所有控制传递给唯一的活动线程。另外,请注意。如果正在使用线程,则主窗体不能是子线程

如果正在显示登录窗体,则应用程序已在运行,否?是否尝试过formLogin.Show()?(其余代码相同)我假设@m.Babcock是正确的。您可能希望显示FormMain,而不是尝试将其作为应用程序运行。您的“应用程序”已经在运行,因为这是显示您的登录表单的内容。如果您将
FormLogin
DialogResult
设置为
OK
,这将导致打开
FormMain
,那么
FormLogin
现在应该关闭。您应该共享一个简单的代码来重现问题。目前代码没有重现问题。