반응형

DataGridView Row Header indicator remove & index 추가

 

행과 열의 header 크기를 같이 맞추려고 해도 Row indicator (화살표)가 있어서 

행 header의 크기를 항상 커진다. 

Row indicator가 필요없어 아래의 코드를 적용하여 제거하였다.

 

private void dataGridViewNormal_RowPrePaint(object sender, DataGridViewRowPrePaintEventArgs e)
{
	e.PaintCells(e.ClipBounds, DataGridViewPaintParts.All);
	e.PaintHeader(DataGridViewPaintParts.Background | DataGridViewPaintParts.Border | DataGridViewPaintParts.Focus | DataGridViewPaintParts.SelectionBackground);
	e.Handled = true;

	using (SolidBrush b = new SolidBrush(dataGridViewNormal.RowHeadersDefaultCellStyle.ForeColor))
	{
		e.Graphics.DrawString((e.RowIndex + 1).ToString(), e.InheritedRowStyle.Font, b, e.RowBounds.Location.X + 10, e.RowBounds.Location.Y + 4);
	}
}
// dataGridViewNormal 이라 이름 지은 control 의 RowPrePaint 이벤트

 

using 내부는 열 header에 index를 추가하는 코드.

 

위 이미지와 같이 표시된다.

 

 

 

 

 

728x90
반응형

+ Recent posts