2012-01-27 88 views
31

我是Win 8 Metro應用程序開發的新手,發現很多東西似乎都是從經典的WPF中改變而來。Metro應用程序不能再以編程方式被殺死?

最讓我困擾的是,沒有辦法關閉應用程序。調試應用程序時,這非常煩人。因此,我正在尋找在我的應用程序中添加「關閉」按鈕的方法。

不過,老WPF方式:

Application.Current.Shutdown() 

不再存在。我無法再在System.Diagnostics中找到Process類。

有誰知道如何做到這一點?

+0

如何只需按下'ALT + F4'? – Gabe 2012-01-27 02:53:48

+0

@加貝:不,「Alt + F4」不會關閉地鐵應用程序(儘管我認爲它可以與啓用/安裝的開發工具一起使用)。它也不會以編程方式進行。 :-) – 2012-01-27 02:57:15

+2

關閉的缺乏是由設計 - 終身管理應該照顧的資源,並在應用程序中的「關閉」按鈕不屑一顧的UI設計。如果您只需關閉進行調試,是否考慮使用'taskkill'?您可以在桌面或任務欄上爲它創建一個圖標,然後爲了方便分配一個快捷鍵。 – 2012-01-27 03:13:14

回答

32

您正在尋找App.Current.Exit()

+1

@OMA您是否發現在iPad/iPhone上更直觀地關閉應用程序的方式? (按Home鍵離開應用程序,雙擊Home打開正在運行的應用程序列表,點擊並按住應用程序的圖標直到它開始晃動,然後按下小紅十字將其關閉。) – 2012-10-03 06:01:32

+2

這並不是更好,但至少從一開始就是這種行爲的新系統。在Windows 8的情況下,它只有在右上角按X才能關閉應用程序。爲什麼不保留地鐵應用程序? (特別是在使用臺式電腦時!)。這很容易,每個人都已經知道。除非在第一次運行Windows 8時顯示教程(如果他們真的必須這樣做,那麼它只顯示整個事情是多麼不直觀),否則將鼠標從上往下拖動以關閉應用程序是不容易發現的。 – OMA 2012-10-23 05:03:05

+1

不起作用,只是最小化應用程序。 – BrainSlugs83 2015-06-18 06:18:02

0

據我所知,無法關閉Metro應用程序(按設計)(使用Task-Manager是唯一有效的選項),據我所知,無法以編程方式退出Metro應用程序(也由設計)。

你可以嘗試拋出一個未處理的異常(我不會建議這麼做)。

+0

ALT + F4仍然適用於Windows應用商店應用 – 2012-11-09 08:27:08

+0

確實如此,但未在測試版和/或RC中。 – Jay 2012-11-23 03:13:34

1

這是我發現,關閉應用程序。

App.Current.Exit(); 
-3

我用崩潰代碼退出Windows 8 Metro APP。 char * p = nullptr; * p = 1;

+0

永遠不要讓應用程序崩潰導致退出,這是非常糟糕的做法。另外,如果應用程序的崩潰計數太高,現在可以從Windows Store中撤銷應用程序。 – 2013-01-08 14:05:04

+0

沒有工作 - 它只是最小化了應用程序。 : - / – BrainSlugs83 2015-06-18 06:22:03

-1

試試這個。它的工作

App.Current.Terminate();