2016-07-07 3 views
1

Windows Forms 응용 프로그램에서 작업 중이고 열 머리글 높이를 높이려고하는 DataGrid이 있습니다.Windows Forms DataGrid (DataGridView 아님)의 열 머리글 높이 증가

나는 datagridview를 어떻게 처리했는지 알지만 DataGrid에 대해서는 확실하지 않습니다.

내가 Actual \n Qty라는 이름의 열이

, 이것은 다음과 같이 표시되는 : 나는 우리가 열 머리글의 높이를 증가시킬 수있는 방법을 알고있다

enter image description here

?

+0

캡션 글꼴 크기입니다. –

+0

@HansPassant이 방법은 머리글의 높이가 아니라 머리글의 텍스트 크기를 늘리는 것이라고 생각하십니까? 여러 행에 열 이름이 있지만 두 행이 현재 머리글 행에 맞지 않습니다. – DoIt

+0

@Dev 정말'.Net 1.1'입니까, 아니면 DataGrid 때문에 태그가 붙어 있습니까? DataGrid 때문이라면 태그를'.Net'으로 바꿀 수 있습니다. –

답변

1

열 머리글의 높이는 HeaderFont 속성을 기반으로 계산되며 비공개 파일 headerFontHeight에 저장됩니다. 당신은 반사를 사용하여 필드를 얻고 그 값이 방법으로 변경할 수 있습니다 : 당신은 당신이 충분히 생각의 높이를 지정할 수 있습니다

var p = typeof(DataGrid).GetField("headerFontHeight", 
    System.Reflection.BindingFlags.Instance | System.Reflection.BindingFlags.NonPublic); 
p.SetValue(dataGrid1, dataGrid1.HeaderFont.Height * 2); 

var m = typeof(DataGrid).GetMethod("OnLayout", 
    System.Reflection.BindingFlags.Instance | System.Reflection.BindingFlags.NonPublic); 
m.Invoke(dataGrid1, new object[] { null }); 
dataGrid1.Invalidate(); 

enter image description here

또는 당신은 모든 컬럼의 텍스트의 높이를 계산하고 설정할 수 있습니다 필드를 최대 값으로 설정하십시오.