什么是另一种方式来关闭比Application.Exit()其他应用
我得到了我的问题解决方案。下面的代码将解决我的查询,
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Diagnostics;
namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
Process.GetCurrentProcess().Kill();
}
}
}
您可以在主呼叫Form.Close()
Form
(通过Application.Run(Form)
传入的那个)。
Form.Close()不会来,我把“。”后。关闭不来 –
在你的主窗体上使用'this.Close()'。 –
在winforms和wpf中你可以使用this.close();
在控制台应用程序中,您可以使用Environment.Exit(0)
。参数0
表示此应用程序以无错误结束。显然,如果你只是正常退出,你应该应该可能只是代码,以便正常的程序流程退出Main
方法。
在Winforms中,使用Form.Close()
方法关闭所有窗体。
哪里必须放置Form.Close()方法? –
无论你想关闭表格。请注意,Form.Close()是方法,如果代码在表单内,那么您只需调用Close()方法(在由表单调用的某个方法中的某处,如事件处理程序)。 –
Tbh,因为程序员太懒惰而无法使用'return',所以在应用程序中需要更多的推力是不好的。 –
Environment.Exit() //Console Application
Form.Close() //winFroms Application
检查这个http://geekswithblogs.net/mtreadwell/archive/2004/06/06/6123.aspx
和
http://discuss.joelonsoftware.com/default.asp?dotnet.12.402651.5
在我的应用程序Environment.Exit()不会来。 –
什么是您的应用程序类型?无论如何检查我的编辑 –
Tbh,需要比应用程序更多的推力,因为程序员懒得使用返回是不好的。答案应至少与'return'配对。 (没有-1,因为OP没有提到这是否是控制台特定的) –
在控制台应用程序,只需return
您通过背面和Main
路径。
Environment.Exit
会以潜在的破坏性方式破坏程序的流量控制,并且需要比所需更高的安全设置。想象一下,你的客户是精通技术的人,然后问你为什么你的应用需要这个和那个安全标志,你必须回答“因为我们使用Environment.Exit
而不是返回。”他的下一个答案肯定是“为什么?”。你知道一个答案,他/她不能用来对付“你不能用return
吗?如果你有一个不可恢复的例外,你为什么不不要catch
呢?”
也许Environment.Exit()
有它的位置,但我并不需要它在C#的一些年的一次。
对于Winforms,在主窗口中使用Form.Close()
,它将发送一个干净的Close
-event事件循环,而不会绕过正常流程。
(旁注:如果你碰巧使用C++,呼吁exit()
几乎总是不正确,因为它规避整个RAII /析构的东西)
这是winforms /控制台应用程序? –
@George Application.Exit()在控制台应用程序中不起作用。 –
啊,谢谢乔恩。 –