我用Visual Studio(C#)编写了一个简单的程序。当我关闭程序(点击Х)时,表单被关闭,但过程依然存在。我不得不从任务管理器关闭它。如何关闭C#进程?
什么命令关闭过程? 我的代码:
private void Form1_FormClosing(object sender, FormClosingEventArgs e)
{
e.Cancel = true;
}
我用Visual Studio(C#)编写了一个简单的程序。当我关闭程序(点击Х)时,表单被关闭,但过程依然存在。我不得不从任务管理器关闭它。如何关闭C#进程?
什么命令关闭过程? 我的代码:
private void Form1_FormClosing(object sender, FormClosingEventArgs e)
{
e.Cancel = true;
}
的e.Cancel=true
将阻止关闭您的形式,因此将其删除。
如果仍然不行,试试这个: 使用Application.Exit()
方法上FormClosed
事件,而不是FormClosing
:
要做到这一点,进入表单设计器窗口:按少校+ F7或右击然后点击Form designer
(类似的东西)
右键单击您的表单,选择Properties
,显示事件,然后双击表单关闭事件,设计师将自动注册该事件并生成你的代码。
你应该有这样的事情,而不产生的Application.Exit()
方法:
private void Form1_FormClosed(object sender, FormClosingEventArgs e)
{
Application.Exit();
}
我在哪里粘贴这种方法? – user3360977
@ user3360977:我编辑我的答案,看看是否有帮助 – Shide
并且顺便说一句,在“e.cancel =真正的”防止您的形式从关闭 – Shide
e.Cancel = true;
指从关闭停止形式。这是你的代码的主要问题。
,如果你有一个确认像你应该使用这个参数,“你确定要关闭?”如果用户选择“否”,则将e.Cancel
设置为true
。
只需删除该代码(或设置取消为false)和你的形式将关闭,如果这是你的应用程序中的最后一个,它将结束。
因此,对于你的问题的最终解决方案是一个简单的
private void Form1_FormClosing(object sender, FormClosingEventArgs e)
{
}
http://msdn.microsoft.com/en-us/library/system.windows.forms.application.exit(v=vs。 110).aspx – ilansch
我认为你应该尝试找出问题的根本原因。为什么你的程序在关闭表单时不能关闭?你有一个无处循环的地方有引用'Application.DoEvents()'? –
@StevenLiekens表单不关闭,因为他取消了关闭流程? – ilansch