이 글은 기계 번역의 미러 문서이며, 원본 기사로 바로 이동하려면 여기를 클릭해 주세요.

보기: 19424|회답: 0

[WPF] WPF는 윈도우와 프로세스를 닫습니다

[링크 복사]
게시됨 2015. 12. 8. 오후 1:02:23 | | |
많은 사람들은 애플리케이션 종료가 간단해야 한다고 생각합니다. 예를 들어 Windows 폼의 Application.Exit() 같은 것처럼; 이 메서드는 문제를 해결할 수 있지만, WPF에서는 이를 남용하지 마세요. 애플리케이션 클래스에는 WPF에 이 메서드가 없고, Exit 이벤트 드라이버가 있으며, WPF 애플리케이션에서 프로그램을 종료하면 많은 주의가 필요합니다:

WPF 애플리케이션의 클로저에는 ShutdownMode 속성 설정이 있으며, 3개의 열거 타입 값이 다음과 같습니다:

1) 마지막 폼이 닫히면 OnLastWindow를 닫습니다

2) OnMainWindow: 애플리케이션의 메인 폼이 닫히면 애플리케이션을 닫습니다

3) OnExplicitShutdown이 통화 종료 표시를 보여줍니다

OnExplicitShutdown 모드에서는 애플리케이션 인스턴스를 호출하는 ShutDown 메서드가 표시되어야 합니다

예를 들어: Application.Current.Shutdown(-1); 여기서 Application.Current는 현재 애플리케이션의 현재 인스턴스를 반환합니다.

         위의 내용은 브라우저가 닫히면 자동으로 종료되는 XBAP에는 적용되지 않는다는 점에 유의하세요.

  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>
코드 복사
  1. private void Window_Closing(object sender, System.ComponentModel.CancelEventArgs e)
  2.         {
  3.             System.Environment.Exit(System.Environment.ExitCode);
  4.         }
코드 복사
창이 서브스레드를 시작하면: Application.Current.Shutdown(); 애플리케이션의 프로세스인 System.Environment.Exit(System.Environment.ExitCode)을 종료하지 않습니다; 이렇게 하면 모든 자식 프로세스가 종료되고 프로세스가 종료됩니다!





이전의:WPF 설정 및 런치 파라미터 얻기
다음:.net은 HttpListener를 사용하여 간단한 웹 서버를 구현합니다
면책 조항:
Code Farmer Network에서 발행하는 모든 소프트웨어, 프로그래밍 자료 또는 기사는 학습 및 연구 목적으로만 사용됩니다; 위 내용은 상업적 또는 불법적인 목적으로 사용되지 않으며, 그렇지 않으면 모든 책임이 사용자에게 부담됩니다. 이 사이트의 정보는 인터넷에서 가져온 것이며, 저작권 분쟁은 이 사이트와는 관련이 없습니다. 위 내용은 다운로드 후 24시간 이내에 컴퓨터에서 완전히 삭제해야 합니다. 프로그램이 마음에 드신다면, 진짜 소프트웨어를 지원하고, 등록을 구매하며, 더 나은 진짜 서비스를 받아주세요. 침해가 있을 경우 이메일로 연락해 주시기 바랍니다.

Mail To:help@itsvse.com