看MSDN啊在绘制 DataGridViewRow 后发生可以单独处理此事件,也可以将它与 RowPrePaint 事件一起处理,以便自定义控件中行的外观。可以自己绘制整个行,也可以绘制行的特定部分并使用
 private void dgvPackDetail_RowPostPaint(object sender, DataGridViewRowPostPaintEventArgs e)
        {
            Color color = dgvPackDetail.RowHeadersDefaultCellStyle.ForeColor;
            if (dgvPackDetail.Rows[e.RowIndex].Selected)
                color = dgvPackDetail.RowHeadersDefaultCellStyle.SelectionForeColor;
            else
                color = dgvPackDetail.RowHeadersDefaultCellStyle.ForeColor;            using (SolidBrush b = new SolidBrush(color))
            {
                e.Graphics.DrawString((e.RowIndex + 1).ToString(), e.InheritedRowStyle.Font, b, e.RowBounds.Location.X + 12, e.RowBounds.Location.Y + 6);
            }
        }
 在DataGridView行的Header上表示行号码