2013-02-24 16 views
9

Pracuję nad aplikacją Windows Phone 8.Jak programowo zamknąć lub zamknąć program Windows Phone 8?

  1. Jak wyjść programowo (za pomocą kodu) z mojej aplikacji Windows Phone 8?

  2. Jakie są różne sposoby, w jakie mogę programowo (poprzez kod) wyjść lub wyjść z mojej aplikacji Windows Phone 8?

+0

możliwe duplikat [Windows Phone 7 blisko aplikacji] (http://stackoverflow.com/questions/3659195/windows-phone -7-close-application) –

Odpowiedz

33

W WP8 nowe API, które pozwala zamknąć aplikację:

Application.Current.Terminate(); 

przez wywołanie metody aplikacja będzie immediatelly wypowiedzenia. Jednak zdarzenie Application_Closing nie będzie wywoływane, a słownik IsolatedStorageSettings.ApplicationSettings nie będzie automatycznie utrzymywany.

Więc jeśli masz dane kręci w IsolatedStorageSettings.ApplicationSettings że nie chcesz stracić to jest to mądry, aby go zapisać:

IsolatedStorageSettings.ApplicationSettings.Save(); 
Application.Current.Terminate(); 

Ponadto metoda ta nie powinna być nadużywana. Zobacz http://msdn.microsoft.com/en-us/library/windowsphone/develop/system.windows.application.terminate(v=vs.105).aspx, aby uzyskać więcej informacji na temat uzasadnionych przypadków użycia.

2
while (((PhoneApplicationFrame)App.Current.RootVisual).CanGoBack) 
{ 
    ((PhoneApplicationFrame)App.Current.RootVisual).RemoveBackEntry(); 
} 
+0

Świetna odpowiedź! Zmodyfikowałem to, aby użyć 'while while (NavigationService.CanGoBack) NavigationService.RemoveBackEntry()'. Czy istnieje różnica? Wydaje się, że robi to samo. –

0

W Windows Phone 8.1, metoda została zmieniona na

Application.Current.Exit();