2012-01-27 5 views
31

Sono nuovo nello sviluppo di Win 8 Metro, e ho scoperto che molte cose sembrano essere cambiate dal classico WPF.Metro App non può più essere ucciso a livello di codice?

Ciò che mi turba di più è che non c'è modo di chiudere l'app. Questo è estremamente fastidioso quando si tratta di eseguire il debug dell'applicazione. Pertanto, sto cercando dei modi per aggiungere un pulsante "chiudi" nella mia app.

Tuttavia, il vecchio modo di WPF:

Application.Current.Shutdown() 

non esiste più. E non sono riuscito a trovare la classe Process in System.Diagnostics.

Qualcuno sa come fare?

+0

ne dite semplicemente premendo Alt + 'F4'? – Gabe

+0

@Gabe: No, "Alt + F4' non chiude le app Metro (anche se penso che funzioni con gli strumenti di sviluppo abilitati/installati). Né lo farebbe programmaticamente. :-) –

+2

La mancanza di chiusura è in base alla progettazione: la gestione a vita si suppone che si occupi delle risorse e il pulsante "Chiudi" nell'app è disapprovato per quanto riguarda la progettazione dell'interfaccia utente. Se hai solo bisogno di chiudere il debug, hai pensato di usare 'taskkill'? È possibile creare un'icona per esso sul desktop o sulla barra delle applicazioni, quindi assegnare un tasto di scelta rapida per comodità. –

risposta

32

Siete alla ricerca di App.Current.Exit()

+1

@OMA Trovate il modo di chiudere le app su un iPad/iPhone più intuitivo? (Premi Home per uscire dall'app, premi due volte Home per aprire l'elenco delle app in esecuzione, tocca l'icona della tua app finché non inizia a tremare, quindi premi la piccola croce rossa per chiuderla.) –

+2

Non è certamente meglio, ma almeno era un nuovo sistema con questo comportamento fin dall'inizio. Nel caso di Windows 8, ha un retaggio di versioni in cui le app sono state chiuse semplicemente premendo una X nell'angolo in alto a destra. Perché non tenerlo per le app della metropolitana? (specialmente quando si utilizza un PC desktop!). È facile e TUTTI lo sanno già. Trascinando il mouse dall'alto verso il basso per chiudere un'app non è molto rilevabile a meno che non mostri un tutorial la prima volta che viene eseguito Windows 8 (e se davvero lo fanno, allora mostra solo quanto poco intuitivo sia tutto). – OMA

+1

Non funziona, riduce al minimo l'app. – BrainSlugs83

0

Per quanto ne so, non è possibile chiudere un'applicazione Metro (in base alla progettazione) (utilizzando il Task-Manager è l'unica opzione che funziona) e, per quanto ne so non c'è modo per uscire da un app Metro programatically (anche dal design).

Si potrebbe provare a lanciare un'eccezione non gestita (non lo consiglierei).

+0

ALT + F4 funziona ancora con le app di Windows Store –

+0

Vero, ma non era nella versione beta e/o RC. – Jay

1

Questo è quello che ho trovato per chiudere l'applicazione.

App.Current.Exit(); 
-3

Ho utilizzato il codice di arresto anomalo per uscire da Windows 8 Metro APP. char * p = nullptr; * p = 1;

+0

Non interrompere mai un'app per causare l'uscita, è davvero una cattiva pratica. Inoltre, le app possono ora essere ritirate dall'archivio di Windows se il loro numero di crash è troppo alto. –

+0

Non ha funzionato: ha solo ridotto al minimo l'app. : - / – BrainSlugs83

-1

Prova questa .. Ha funzionato

App.Current.Terminate(); 
Problemi correlati