Brug denne begivenhed i kombination med System.ConsoleCancelEventHandler og System.ConsoleCancelEventArgs. CancelKeyPress-begivenheden kan opfange Ctrl+C-signalet, så hændelseshåndteren kan beslutte, om den vil fortsætte udførelsen eller afslutte konsolapplikationen. For mere information om håndtering af begivenheder, se Håndtering og opdragelse af begivenheder. Når brugeren trykker på Ctrl+C eller Ctrl+Break, udløser CancelKeyPress begivenheden, og applikationens ConsoleCancelEventHandler udfører hændelseshåndteren. Hændelseshåndteren sender objektet ConsoleCancelEventArgs med to nyttige egenskaber: SpecialKey: Den afgør, om brugeren kalder handleren ved at trykke på Ctrl+C (egenskabsværdien vil være ConsoleSpecialKey.ControlC) eller Ctrl+Break (egenskabsværdien vil være ConsoleSpecialKey.ControlBreak). Annuller, som bestemmer, hvordan applikationen skal reagere på brugeren ved at trykke på Ctrl+C eller Ctrl+Break. Som standard er Cancel-egenskaben falsk, fordi programmet afslutter eksekveringen, når handleren afslutter. Ændring af dens egenskab til true angiver, at applikationen skal fortsætte med at udføre.
// Resumé: Når System.ConsoleModifiers.Control ændrer tasten (Ctrl) og System.ConsoleKey.C konsoltasten (C) eller Break-tasterne holdes nede (Ctrl+C eller Ctrl+Break) samtidig. offentlig statisk begivenhed ConsoleCancelEventHandler CancelKeyPress; msdn:https://msdn.microsoft.com/zh-cn/library/system.console.cancelkeypress.aspx
I scenariet åbner vi en tråd og skriver en while(kørende) deadloop, som kan styre, om programmet kører eller ej gennem variabler.
|