2010-02-16 3 views
2

나는 사용자가 클릭 할 때 열 머리글에 사용자 정의 글리프 그리기 (삼각형을 가정 해 봅시다.)를 DataGridView 있습니다.DataGridView 헤더의 사용자 정의 글리프

나는 EnableHeadersVisualStyles으로 설정하고 있습니다. 거짓입니다.

원하는 결과를 얻는 방법에 대한 예나 제안이 있습니까? DataGridView 또는 DataGridViewColumn에서 상속해야합니까?

는 몇 일이 먼저 이벤트 핸들러 내에서이

void GridView_CellPainting(object sender, DataGridViewCellPaintingEventArgs e) 
     { 
       e.PaintBackground(e.ClipBounds, true); 
       StringFormat sf = new StringFormat(); 
       sf.Alignment = StringAlignment.Near; 
       e.Graphics.DrawString(e.FormattedValue.ToString() this.ColumnHeadersDefaultCellStyle.Font, new SolidBrush(this.ColumnHeadersDefaultCellStyle.ForeColor),e.CellBounds, sf); 

          // 
          //Place code to draw your custom gliph 
          // 
       e.Handled = true; 
      } 
     } 

행 "sf.Alignment =처럼 수행 GridView_CellPainting 이벤트 핸들러를 첨부 할 필요가 사전에 마르코

답변

0

을 주셔서 감사합니다 StringAlignment.Near; " 페인트 할 텍스트를 설정하십시오. 필요하다면 별도로 바꾸십시오.

0

이 정보는 도움이되었습니다. 완벽하게 작동합니다

열 머리글을 완벽하게 중앙에 배치하려면 정렬을 사용하지 않으려면 이 필요합니다. 열의 SortMode 속성을 "NonSortable"로 설정하십시오. 이렇게하면 열 텍스트가 가운데 맞춤 또는 오른쪽 정렬 될 때마다 정렬 글리프에 공간이 예약되지 않습니다.

에서 : How can I center the heading in a column on a DataGridView?

관련 문제