2015-11-13 13 views
6

Próbuję uniemożliwić zamknięcie aplikacji, klikając pole Zamknij w oknie aplikacji. Na przykład, mając edytor tekstu z niezapisanymi zmianami, po naciśnięciu przycisku Zamknij pole, najpierw wyświetliłbym komunikat "Czy chcesz zapisać zmiany przed wyjściem?"Zastępuj zamknij okno w oknie 10 Powszechne aplikacje UWP

Jak wykryć aplikację, która chce się zamknąć i zapobiec temu?

Używam C++, a to musi być w przypadku Windows 10 Universal Apps UWP. Już wiem, jak to zrobić dla Win32. Dzięki

+1

Nie sądzę, że można to zrobić, można reagować tylko w przypadku aplikacji zawieszanie się miano w tamtym czasie. –

+2

Jest to możliwe, ponieważ przeglądarka Microsoft Edge jest aplikacją UWP i obsługuje to zachowanie w niektórych przypadkach. Na przykład na czacie na Facebooku wpisz wiadomość bez naciskania klawisza Enter (wyślij) i spróbuj zamknąć przeglądarkę. Oznacza to, że jest to możliwe, po prostu nie wiem jak. Jakaś pomoc? – Esenthel

+0

Edge to aplikacja 1-osobowa - MS może używać interfejsów API, których nikt inny nie może. https://msdn.microsoft.com/en-us/library/windows/apps/mt243287.aspx wyraźnie mówi, że nie ma zdarzenia zamknięcia aplikacji. –

Odpowiedz

6

Komentarze są poprawne. Obecnie nie można tego zrobić w zwykłej aplikacji Store.

Jednak przy aktualizacji Creators (i odpowiadające SDK) zawarliśmy API podglądu, że teraz można sprawdzić na tej funkcjonalności:

Klasa Windows.UI.Core.Preview.SystemNavigationManagerPreview zapewnia zdarzenie CloseRequested aplikacja może oznaczać jako obsługiwana. Aby zdarzenie zadziałało, aplikacja musi zadeklarować ograniczoną zdolność "confirmAppClose" na: https://docs.microsoft.com/en-us/windows/uwp/packaging/app-capability-declarations

Proszę dać nam znać swoją opinię.

Dzięki, Stefan Wick - Platform Developer Okna

+0

Dzięki za informacje ekscytujące. Zaczekam, aż API zostanie sfinalizowana. – Esenthel

+0

Nie znaleziono funkcji "ConfirmAppClose" w 16299 sdk – Vincent

Powiązane problemy