2011-08-25 38 views

回答

1

我得到了我的問題解決方案。下面的代碼將解決我的查詢,

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(); 
     } 
    } 
} 
0

您可以在主呼叫Form.Close()Form(通過Application.Run(Form)傳入的那個)。

+0

Form.Close()不會來,我把「。」後。關閉不來 –

+0

在你的主窗體上使用'this.Close()'。 –

1

在winforms和wpf中你可以使用this.close();

2

在控制檯應用程序中,您可以使用Environment.Exit(0)。參數0表示此應用程序以無錯誤結束。顯然,如果你只是正常退出,你應該應該可能只是代碼,以便正常的程序流程退出Main方法。


在Winforms中,使用Form.Close()方法關閉所有窗體。

+0

哪裏必須放置Form.Close()方法? –

+0

無論你想關閉表格。請注意,Form.Close()是方法,如果代碼在表單內,那麼您只需調用Close()方法(在由表單調用的某個方法中的某處,如事件處理程序)。 –

+0

Tbh,因爲程序員太懶惰而無法使用'return',所以在應用程序中需要更多的推力是不好的。 –

0
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

+0

在我的應用程序Environment.Exit()不會來。 –

+0

什麼是您的應用程序類型?無論如何檢查我的編輯 –

+0

Tbh,需要比應用程序更多的推力,因爲程序員懶得使用返回是不好的。答案應至少與'return'配對。 (沒有-1,因爲OP沒有提到這是否是控制檯特定的) –

1

在控制檯應用程序,只需return您通過背面和Main路徑。

Environment.Exit會以潛在的破壞性方式破壞程序的流量控制,並且需要比所需更高的安全設置。想象一下,你的客戶是精通技術的人,然後問你爲什麼你的應用需要這個和那個安全標誌,你必須回答「因爲我們使用Environment.Exit而不是返回。」他的下一個答案肯定是「爲什麼?」。你知道一個答案,他/她不能用來對付「你不能用return嗎?如果你有一個不可恢復的例外,你爲什麼不不要catch呢?」

也許Environment.Exit()有它的位置,但我並不需要它在C#的一些年的一次。

對於Winforms,在主窗口中使用Form.Close(),它將發送一個乾淨的Close -event事件循環,而不會繞過正常流程。


(旁註:如果你碰巧使用C++,呼籲exit()幾乎總是不正確,因爲它規避整個RAII /析構的東西)

相關問題