응용 프로그램 내에서 C#을 테스트/학습하기 위해 숨김/표시 속성을 사용하여 창을 열고 닫습니다. WPF 응용 프로그램입니다. 메인 창에서 사용자가 도구 모음의 빨간색 X를 누를 때 감지 (오른쪽 상단)
, 나는이 방법을 트리거하는 '닫기'버튼이 있습니다public void buttonQuit_Click(object sender, RoutedEventArgs e)
{
var message = exitmessage;
var title = exitTitle;
var result = MessageBox.Show(
message, // the message to show
title, // the title for the dialog box
MessageBoxButton.YesNo, // show two buttons: Yes and No
MessageBoxImage.Question); // show a question mark icon
// lets see what has been pressed
switch (result)
{
case System.Windows.MessageBoxResult.Yes: // Yes button pressed
CloseAllWindows();
break;
case System.Windows.MessageBoxResult.No: // No button pressed
break;
default: // Neither Yes nor No pressed (just in case)
MessageBox.Show("Oh noes! What did you press?!?!");
break;
}
}
나는 모든 창은 숨겨진 것들을 포함, 닫히지 있는지 확인이 방법. 하지만 이제는 잡을 수 있습니다. 사용자가 (메인 윈도우에서) 툴바에서 오른쪽 상단의 빨간색 X를 눌러 닫으면 해당 메인 윈도우 만 닫히지 만 백그라운드에서는 숨겨진 것들이 여전히 남아 있습니다.
은 100 % 폐쇄 응용 프로그램을 얻을 정말 충분한
CloseAllWindows();
인가 :그래서 사실은이 개 질문입니까?
사용자가 툴바에서 빨간색 X를 눌렀을 때 어떻게 이벤트를 "catch"하고 오른쪽 종료 이벤트를 트리거 할 수 있습니까?
메신저 (단지 이주 이제 도니는 다르게) 그래서 당신은 핸들러로하는 방법을 퍼팅과 의미 정확히 무엇? – Dante1986
그는 처리기를 의미합니다. Closing 또는 Closed는 이벤트 대리자이며 이벤트를 처리하기 위해 메서드 대리자를 추가해야합니다. MSDN http : // msdn의 이벤트에서이 문서를 확인하는 것이 가장 좋습니다. microsoft.com/en-us/library/awbftdfh.aspx –
@ 단테 : 이벤트 처리시 읽으십시오. 해당 이벤트에 핸들러 메소드 (일반 메소드와 유사하지만 특수 서명이있는 핸들러 메소드)를 첨부하여 이벤트를 처리합니다. 이벤트가 발생할 때마다 핸들러 메서드가 호출됩니다. –