To, jak często oszczędzasz, zależy od Twojej aplikacji. Jednak najważniejsze czasy są:
- Uruchomienie
- Activated
- dezaktywowane
- Zamykanie
Launching
jest wywoływana, gdy aplikacja jest pierwszym uruchomieniu z ekranu głównego i Closing
jest wywoływana, gdy użytkownik naciska klawisz powrotu, aby opuścić aplikację. Oczywiście najprawdopodobniej będziesz chciał zapisać trwałe dane w wydarzeniu Closing
.
Activated
jest wywoływana, gdy użytkownik zamknął aplikację za pomocą przycisku Windows
i wrócił do niej, naciskając przycisk Wstecz. Nie zostanie to wywołane, jeśli użytkownik uruchomi aplikację po raz pierwszy.
Podobnie, zdarzenie Deactivated
jest wywoływane, gdy użytkownik naciśnie przycisk Windows
. W zależności od aplikacji będziesz chciał zapisać chwilowe dane przejściowe, aby po przywróceniu dać iluzję, że Twoja aplikacja nie została w ogóle zamknięta. (W przeciwnym razie na przykład wszystkie pola tekstowe staną się puste, nawet jeśli użytkownik wprowadził dane przed naciśnięciem przycisku Windows
).
To są główne wydarzenia, dzięki którym możesz zaprojektować swoją aplikację. Należy pamiętać, że jeśli twoje pliki zapisu będą duże, a ich zapisanie zajmie więcej niż 10 seconds
po wywołaniu zdarzenia closing
, Twoja aplikacja zostanie natychmiast zamknięta, co może spowodować uszkodzenie pliku składowania. Dlatego w przypadku dużych plików zapisanych należy planować z wyprzedzeniem, zapisując przyrostowo (na przykład po wprowadzeniu przez użytkownika zmiany, która powinna pozostać na stałe).
Nie ma rozwiązania tego problemu, ponieważ czasy zapisywania są w dużym stopniu zależne od rodzaju tworzonej aplikacji. Czytanie z Execution Model MSDN Page, jak to idzie bardziej szczegółowo i dostarcza przykładów kodu.
Czy widzisz/czytasz samouczek? –