WPF 사용자 지정 창에서 크기 조정 테두리를 제거하고 싶습니다. WM_NCCALCSIZE 메시지를 처리하고 0을 반환해야한다는 것을 이미 알게되었습니다. 테두리를 제거하고 창을 창의 왼쪽 위 모서리에 맞 춥니 다. 문제는 이렇게하면 클라이언트 영역이 증가하고 WPF 루트 컨트롤은 증가하지 않는다는 것입니다. 이렇게하면 창 왼쪽과 아래쪽에 검은 색 가장자리가 생겨서 제거하고 싶습니다. 내가 VS2010 C# Windows XP를 사용하고 사전에 Windows XP 및 Windows 모두에서 7AllowTransparency를 사용하지 않고 WPF 창의 비 클라이언트 영역을 제거하는 방법
감사 작업이 싶습니다
.
편집 : 검은 색 가장자리를 일으키는 것이 무엇인지 알아 냈습니다. 뒤에있는 창입니다. 이제는 문제가 루트 요소가 전체 창을 차지하지 않는 것 같습니다. 마진을 음수 값으로 설정하면 검정 영역 위로 그립니다. 외관상으로는 레이아웃 패스가 좋으며 원하는 크기는 윈도우와 같지만 렌더링 크기가 다릅니다.
또한 나는 창 스타일에서 WS_THICKFRAME을 제거하여 전체 문제를 해결할 수 있음을 발견했습니다. 그 문제는 WS_THICKFRAME이 사용될 때만 활성화되는 크기 조정 기능입니다. WM_NCHITTEST를 사용하여 크기를 조정하고 창에 크기 조정 테두리가 없다는 것을 알고 있으면 크기 조정 기능이 종료됩니다.
루트 요소가 검정 창 배경을 제거하거나 두꺼운 프레임없이 기본 크기 조정 기능을 사용하도록 전체 창을 차지하게하고 싶습니다.
감사합니다.
WM_NCCALCSIZE 처리 예제를 보여주세요. –