> 백엔드 개발 > C++ > WPF 창에서 닫기 버튼을 숨기면서 동시에 WPF 창을 숨길 수 있는 방법은 무엇입니까?

WPF 창에서 닫기 버튼을 숨기면서 동시에 WPF 창을 숨길 수 있는 방법은 무엇입니까?

Barbara Streisand
풀어 주다: 2025-01-03 09:11:39
원래의
467명이 탐색했습니다.

How Can I Hide the Close Button in a WPF Window While Still Preserving the

WPF Windows에서 닫기 버튼 숨기기

WPF 애플리케이션에서 모달 대화 상자를 만들 때 제목 표시줄을 유지하면서 닫기 버튼을 숨기는 경우가 많습니다. WPF에는 이러한 특정 목적을 위한 기본 제공 속성이 없지만 P/Invoke와 이벤트 처리를 조합하여 닫기 버튼을 숨길 수 있습니다.

닫기 버튼을 표시하지 않으려면 먼저 필요한 선언을 추가하세요.

private const int GWL_STYLE = -16;
private const int WS_SYSMENU = 0x80000;
[DllImport("user32.dll", SetLastError = true)]
private static extern int GetWindowLong(IntPtr hWnd, int nIndex);
[DllImport("user32.dll")]
private static extern int SetWindowLong(IntPtr hWnd, int nIndex, int dwNewLong);
로그인 후 복사

다음으로 Window의 Loaded 이벤트에서 다음 코드를 실행합니다.

var hwnd = new WindowInteropHelper(this).Handle;
SetWindowLong(hwnd, GWL_STYLE, GetWindowLong(hwnd, GWL_STYLE) & ~WS_SYSMENU);
로그인 후 복사

이렇게 하면 창 아이콘 및 시스템 메뉴와 함께 닫기 버튼을 사용합니다.

중요 고려 사항

이 방법은 닫기 버튼을 숨기지만 사용자가 창을 닫는 것을 막지는 못합니다. Alt F4를 누르거나 작업 표시줄에서 애플리케이션을 닫는 등의 대체 수단을 통해

특정 조건이 충족되기 전에 창이 닫히는 것을 완전히 방지하려면 OnClosing 이벤트를 재정의하고 취소를 true로 설정하는 것이 좋습니다. 이는 P/Invoke 기술과 함께 수행되어 창 닫기를 비활성화하는 완벽한 솔루션을 제공할 수 있습니다.

위 내용은 WPF 창에서 닫기 버튼을 숨기면서 동시에 WPF 창을 숨길 수 있는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿