Denne artikkelen er en speilartikkel om maskinoversettelse, vennligst klikk her for å hoppe til originalartikkelen.

Utsikt: 19424|Svare: 0

[WPF] WPF lukker vinduer og prosesser

[Kopier lenke]
Publisert på 08.12.2015 13:02:23 | | |
Mange mener at det å lukke en applikasjon bør være enkelt, for eksempel en Application.Exit() i et Windows-skjema; Metoden kan løse problemet, men ikke misbruk det i WPF, fordi Application-klassen ikke har denne metoden i WPF, men det finnes en Exit-hendelsesdriver, og å lukke programmet i WPF-applikasjonen gir mye oppmerksomhet:

Lukkingen i en WPF-applikasjon har egenskapsinnstillingen ShutdownMode, med verdiene til de 3 enum-typene:

1) OnLastWindowLukk applikasjonen når det siste skjemaet lukkes

2) PåMainWindowLukk applikasjonen når hovedformen av applikasjonen er lukket

3) OnExplicitShutdown viser at samtalen er avsluttet

I OnExplicitShutdown-modus må ShutDown-metoden som kaller applikasjonsinstansen vises

For eksempel: Application.Current.Shutdown(-1); Her returnerer Application.Current den nåværende applikasjonsinstansen til den nåværende applikasjonen.

         Merk at ovenstående ikke gjelder for XBAP, som automatisk lukkes når nettleseren lukkes.

  1. <Window x:Class="WpfFistDemo.MainWindow"
  2.         xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
  3.         xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
  4.         Title="MainWindow" Height="350" Width="525" Loaded="windows_load" Closing="Window_Closing" >
  5.     <Grid>

  6.     </Grid>
  7. </Window>
Kopier koden
  1. private void Window_Closing(object sender, System.ComponentModel.CancelEventArgs e)
  2.         {
  3.             System.Environment.Exit(System.Environment.ExitCode);
  4.         }
Kopier koden
Hvis vinduet starter en undertråd: Application.Current.Shutdown(); Stenger ikke applikasjonens prosess, System.Environment.Exit(System.Environment.ExitCode); Dette vil lukke alle barneprosessene og avslutte prosessen!





Foregående:WPF-innstillinger og henting av startparametere
Neste:.net implementerer en enkel webserver ved bruk av HttpListener
Ansvarsfraskrivelse:
All programvare, programmeringsmateriell eller artikler publisert av Code Farmer Network er kun for lærings- og forskningsformål; Innholdet ovenfor skal ikke brukes til kommersielle eller ulovlige formål, ellers skal brukerne bære alle konsekvenser. Informasjonen på dette nettstedet kommer fra Internett, og opphavsrettstvister har ingenting med dette nettstedet å gjøre. Du må fullstendig slette innholdet ovenfor fra datamaskinen din innen 24 timer etter nedlasting. Hvis du liker programmet, vennligst støtt ekte programvare, kjøp registrering, og få bedre ekte tjenester. Hvis det foreligger noen krenkelse, vennligst kontakt oss på e-post.

Mail To:help@itsvse.com