2009-11-29 6 views

답변

1

윈도우 당신이 열 머리글의 높이를 변경할 수 있습니다 않으며, 않습니다는 헤더의 글꼴을 변경할 수 있습니다 -하지만 쉽지는 거리가 멀다. 그것은 Windows입니다. 당신은 무엇을 기대합니까? :)

이 중 하나를 수행하려면 Windows 제어 및 메시지 세계를 탐구해야합니다.

높이를 변경하려면 Windows에서 HDM_LAYOUT 메시지를 처리해야합니다. 이 메시지는 헤더 컨트롤로 전송됩니다. 이 메시지에서 머리글 컨트롤의 경계와 목록의 경계를 제어 할 수 있습니다. 마찬가지로 글꼴을 변경하려면 NM_CUSTOMDRAW 알림을 가로 채고 장치 컨텍스트의 글꼴을 설정해야합니다.

여러 가지 복잡한 점이 있습니다. .NET에서는 헤더 컨트롤을 노출하지 않습니다. NM_CUSTOMDRAW에는 여러 단계가 있으며 자원을 적절하게 릴리스해야합니다.

VB.NET을 사용하는 경우 모든 문제를 방지하고 ObjectListView (.NET WinForms ListView를 사용하는 오픈 소스 래퍼)을 사용할 수 있습니다. 이렇게하면 머리글 높이가 변경되고 원하는 경우 각 열마다 다른 글꼴과 색을 사용할 수 있습니다. 컨트롤을 사용하지 않아도 소스를 읽으면 완료된 방법을 확인할 수 있습니다.

이 예

작업에서 다른 글꼴, 색상 및 줄 바꿈을 보여줍니다

alt text http://objectlistview.sourceforge.net/cs/_images/header-formatting.png