C# 流程在关闭应用程序c后继续#
我是C#的初学者,我正在尝试制作WFA应用程序。但有一个问题。当我运行它时,它会显示第一个(登录)表单,如果我在未登录的情况下关闭它,它会正常工作,但当我登录时,第一个表单会隐藏,第二个表单会显示,如果我单击X按钮关闭它,表单会消失,但我可以在任务管理器中看到正在运行的进程。在secound窗体上还有一个注销按钮,若我单击该按钮,它将隐藏secound窗体,并显示第一个(登录)窗体,若我关闭它,进程仍在后台运行。 当通过X按钮关闭应用程序时,如何停止进程在后台运行? 我在搜索,但找不到解决问题的方法。(我找到了一些可以附加到进程的东西,可以看到线程,但是线程太多了) 有创建表单和隐藏表单等的代码:C# 流程在关闭应用程序c后继续#,c#,.net,winforms,visual-studio,C#,.net,Winforms,Visual Studio,我是C#的初学者,我正在尝试制作WFA应用程序。但有一个问题。当我运行它时,它会显示第一个(登录)表单,如果我在未登录的情况下关闭它,它会正常工作,但当我登录时,第一个表单会隐藏,第二个表单会显示,如果我单击X按钮关闭它,表单会消失,但我可以在任务管理器中看到正在运行的进程。在secound窗体上还有一个注销按钮,若我单击该按钮,它将隐藏secound窗体,并显示第一个(登录)窗体,若我关闭它,进程仍在后台运行。 当通过X按钮关闭应用程序时,如何停止进程在后台运行? 我在搜索,但找不到解决问题的
如果登录frmLogin,则隐藏->显示frmMail
如果注销,frmMail将隐藏->显示frmLogin 如果用户成功登录:
this.Hide();
frmMail f2 = new frmMail();
f2.Show();
如果用户单击“注销”按钮:
我找到了解决办法,如果每个人都有相同的问题,这可能会有所帮助。
对于你的情况,我要做的很简单。 首先,我将覆盖FormClose_事件,类似这样的事件
void Form_FormClosing(object sender, FormClosingEventArgs e)
{
//And here you can call
Application.Exit();
// which this will cause to close everything in your application
//Also if you want to be more aggressive, there is another option, you can
//use, Environment.Exit(1), which will basically kill you process.
}
我希望我的回答能帮助你,祝你有愉快的一天 进程仍在运行,因为启动窗体尚未关闭。它是隐藏的,用户无法用它做任何事情。您似乎还创建了一个新的登录表单,而不是使用现有表单。嗯,这不是做这件事的方法。很多可能的修复,但考虑到,你不必隐藏任何东西,可以简单地关闭一个你不需要的窗口。我将代码(从Chang the way..)粘贴到Program.cs,但我不太确定在frmLogin.cs和frmMail.cs中需要做什么才能使其正常工作。不要调用Hide(),调用Close()。在显示新表单之后。现在很简单。谢谢,就这样。我使用了与此类似的代码,它可以工作!
void Form_FormClosing(object sender, FormClosingEventArgs e)
{
//And here you can call
Application.Exit();
// which this will cause to close everything in your application
//Also if you want to be more aggressive, there is another option, you can
//use, Environment.Exit(1), which will basically kill you process.
}