Condividi tramite


Ciclo di vita di un'app Windows App SDK

Questo articolo fornisce una panoramica della gestione del ciclo di vita delle app desktop Windows App SDK.

Panoramica del ciclo di vita dell'app

Il ciclo di vita dell'applicazione di un'app SDK per app di Windows non è uguale a un'app UWP. Il ciclo di vita delle app SDK per app di Windows è simile ad altre app desktop .NET e Win32. SDK per app di Windows app, come le app UWP, vengono avviate e arrestate. Sono in esecuzione o non sono in esecuzione. Tuttavia, a differenza delle app UWP, non possono essere sospese e riprese. A livello di finestra, l'app può sottoscrivere eventi per reagire quando le finestre vengono attivate e disattivate.

Ciclo di vita di Microsoft.UI.Xaml.Application

L'oggetto Application è il punto di ingresso principale per un'app SDK per app di Windows. È simile alla classe applicazione UWP, ma con alcune differenze importanti. L'oggetto Application viene creato dal framework SDK per app di Windows ed è accessibile dalla Microsoft.UI.Xaml.Application.Current proprietà .

La Application classe in SDK per app di Windows ha un solo metodo del ciclo di vita, OnLaunched, che viene chiamato all'avvio dell'app. Il OnLaunched metodo è responsabile della creazione della finestra principale dell'app e della visualizzazione. Il OnLaunched metodo è anche responsabile dell'inizializzazione del framework SDK per app di Windows e dell'avvio dell'app. Quando si crea una nuova app SDK per app di Windows, il OnLaunched metodo viene generato automaticamente.

Al contrario, la classe UWP Application ha diversi metodi relativi al ciclo di vita correlati all'attivazione, tra cui OnLaunched, OnActivated e OnBackgroundActivated. I OnActivated metodi e OnBackgroundActivated vengono chiamati quando l'app viene attivata. Il OnActivated metodo viene chiamato quando l'app viene attivata dall'utente e il OnBackgroundActivated metodo viene chiamato quando l'app viene attivata dal sistema.

UWP's Application class also has several lifecycle events: Suspending, Resuming, EnteredBackground, and LeavingBackground. L'evento Suspending viene generato quando l'app viene sospesa e l'evento Resuming viene generato quando l'app viene ripresa. L'evento EnteredBackground viene generato quando l'app entra in background e l'evento LeavingBackground viene generato quando l'app lascia lo sfondo. Per una spiegazione completa degli eventi del ciclo di vita della piattaforma UWP, vedi Ciclo di vita delle app UWP di Windows 10.

Se si esegue la migrazione di un'app UWP a SDK per app di Windows, è possibile usare la guida alla migrazione delle funzionalità del ciclo di vita dell'applicazione per comprendere le differenze tra la piattaforma UWP e i cicli di vita delle app SDK per app di Windows.

Ciclo di vita di Microsoft.UI.Xaml.Window

L'oggetto Window in SDK per app di Windows include anche Window.Activated alcuni eventi del ciclo di vita e Window.Closed.

Window.Activated

L'evento Activated viene generato quando la finestra è stata attivata o disattivata dal sistema. Le app possono determinare lo stato dell'attivazione di Window controllando la proprietà WindowActivationState del parametro WindowActivatedEventArgs . Questo evento verrà generato ogni volta che la finestra viene attivata o disattivata, incluso quando la finestra viene ridotta a icona o ingrandita.

Window.Closed

L'evento Closed viene generato quando la finestra viene chiusa. Se si tratta dell'ultima finestra da chiudere, in genere mainWindow dell'app, l'applicazione verrà terminata. Poiché non esiste alcun Suspending evento generato dall'oggetto in SDK per app di Windows, è consigliabile usare l'evento Application della finestra principale per salvare lo stato dell'applicazione Closed e pulire eventuali risorse gestite.

Vedi anche

Ciclo di vita delle app e servizi di sistema

Ciclo di vita dell'app UWP