2016-12-05 3 views
0

OnMainWindowClose, OnLastWindowClose 또는 OnExplicitShutdown을 WPF C# gui 응용 프로그램에서 작동시키지 못했습니다. 메인 윈도우의 이름을 UI로 변경했습니다. 내 App.xml x : Class에 ShutdownMode = "OnMainWindowClose"라는 항목이 있습니다. MahApps를 사용하고 있습니다. VS2012의 디버그 모드에서 앱을 실행 중입니다. 창 제목 막대 (창 오른쪽 상단의 흰색 십자가가있는 빨간색 상자)를 클릭하면 창을 닫을 수 있지만 앱은 계속 실행됩니다. 배경. 프로세스를 죽이기 위해 VS2012의 디버그 중지 버튼을 눌러야합니다. 나는 이것을 초심자로 이해하기 위해 최선을 다하고 있습니다. 그래서 저에게 뭔가를 시도해 보라고 제안 할 수있는 사람이 있다면, 대단히 감사 할 것입니다.OnMainWindowClose가 wpf에서 작동하지 않습니다.

+0

이 스레드의 두 번째 메모에서 모든 것을 시도 했습니까? : http://stackoverflow.com/questions/9992119/wpf-app-doesnt-shut-down-when-closing-main-window – Asnivor

+0

예, 있습니다. 그 페이지에서 모든 제안을 시도했지만 아무도 성공하지 못했습니다. 제안 중 하나 내가 완전히 그것을 시도하지 몇 가지 문제가 파문을 가지고있어 : 위의 작동하지 않으면 (나는 당신이 처음부터 WPF 응용 프로그램을 쓴 것 같아요), 메인 윈도우 아마 응용 프로그램에 알려져 있지 않습니다 메인 윈도우. 그렇게 지정하십시오. 코드에서 Application.MainWindow의 값은 다음과 같습니다. Window : MainWindow = mainWindow; XAML에서 MainWindow = "mainWindow"; MainWindow를 새 UI 이름으로 대체해야한다고 생각하지만 VS2012는 항상 UI에 대해 불만을 나타냅니다. –

+0

Visual Studio 외부에서 응용 프로그램을 실행하면 올바르게 닫힙니다. 즉, 작업 관리자에 느린 프로세스가 없습니다. 그렇다면 VS 디버깅 옵션 중 하나가 될 수 있습니다. – Asnivor

답변

0

우리가 작업 한 것처럼 Visual Studio의 디버그 옵션과 관련이있는 것으로 보입니다.

이 문제를 해결하기 위해 시간이 없어 당신이 응용 프로그램을 종료 '깔끔하게'걱정하지 않는 경우, 다음과 같은 사용할 수 있어야합니다 :

Environment.Exit(0); 

이 확실히 디버그에서 휴식한다 .