데이타 그리드 뷰 헤더 이용하기.
데이타 그리드 뷰 에 기본 제공되는 RowHeader를 이용하여 번호매김을 하는 코드임.
소스는 아래와 같이 간단함.
private void dataGridView1_RowPostPaint(object sender, DataGridViewRowPostPaintEventArgs e)
{
if (e.RowIndex >= 0)
{
string NumberingText = (e.RowIndex+1).ToString();
// 글자 사이즈 구하기.
SizeF stringSize = e.Graphics.MeasureString(NumberingText, Font);
// 글자에 맞춰 좌표계산.
PointF StringPoint = new PointF
(
Convert.ToSingle(dataGridView1.RowHeadersWidth - 3 - stringSize.Width ),
Convert.ToSingle(e.RowBounds.Y) + dataGridView1[0, e.RowIndex].ContentBounds.Height * 0.3f
);
// 문자열 그리기.
e.Graphics.DrawString
(
NumberingText,
Font,
Brushes.Black,
StringPoint.X,
StringPoint.Y
);
}
}