소스코드
using System.Runtime.InteropServices; ... Some Class ... [DllImport("user32.dll", CharSet = CharSet.Auto, SetLastError = false)] ... protected override void WndProc(ref Message m) |
Form1_Closing() 역시 종료 할때 발생합니다만, 그 이전에 WndProc 가 먼저 처리 됩니다.
X 눌렸을 때 막고, 닫기 버튼을 눌렀을 경우에만 종료 시키려면 Form1_Closing() 메서드에 e.Cancel = false; 주되, 특정 변수값 세팅이면 true 로 주면 되겠네요.
닫기 버튼은
변수 값 세팅, form.Close() 주면 될 것이고
우상단 X 는
WndProc에서 변수값 세팅해 주면 될 것이고~
그냥 Form1_Closing() 에 e.Cancel = false; 만 주면 불사속성을 지닌 창을 마주하게 될 겁니다.