protected override void WndProc(ref Message m) { switch (m.Msg) { case WM.QUERYENDSESSION: case WM.ENDSESSION: CloseReason = CloseReason.WindowsShutDown; break; case WM.SYSCOMMAND: if (((UInt16)m.WParam & 0xfff0) == 0xf060) { CloseReason = CloseReason.UserClosing; } break; case WM.ENTERSIZEMOVE: { SizeChangeToggleEventArgs args = new SizeChangeToggleEventArgs { End = false }; OnSizeChangeToggle(args); if (args.Handled) { return; } break; } case WM.EXITSIZEMOVE: { SizeChangeToggleEventArgs args = new SizeChangeToggleEventArgs { End = true }; OnSizeChangeToggle(args); if (args.Handled) { return; } break; } } base.WndProc(ref m); }
protected override void WndProc(ref Message m) { switch (m.Msg) { case WM.ENTERSIZEMOVE: { SizeChangeToggleEventArgs args = new SizeChangeToggleEventArgs { End = false }; OnSizeChangeToggle(args); if (args.Handled) { return; } break; } case WM.EXITSIZEMOVE: { SizeChangeToggleEventArgs args = new SizeChangeToggleEventArgs { End = true }; OnSizeChangeToggle(args); if (args.Handled) { return; } break; } } base.WndProc(ref m); }
protected virtual void OnSizeChangeToggle(SizeChangeToggleEventArgs e) { SizeChangeToggle?.Invoke(this, e); }