1:
你可以重写DataGridView的OnRowPostPaint方法或者直接在DataGridView的RowPostPaint事件里写,如下(重写DataGridView的OnRowPostPaint方法)
using System;
using System.Text;
using System.Windows.Forms;
using System.Drawing;
namespace Test
{
class DataGridViewEx : DataGridView
{
SolidBrush solidBrush;
public DataGridViewEx()
{
solidBrush = new SolidBrush(this.RowHeadersDefaultCellStyle.ForeColor);
}
protected override void OnRowPostPaint(DataGridViewRowPostPaintEventArgs e)
{
e.Graphics.DrawString((e.RowIndex + 1).ToString(), e.InheritedRowStyle.Font, solidBrush, e.RowBounds.Location.X + 15, e.RowBounds.Location.Y + 5);
base.OnRowPostPaint(e);
}
}
}
2:
最简单的方法是在Datagridview的事件RowPostPaint事件下面添加如下代码即可
private void dataGridView1_RowPostPaint(object sender, DataGridViewRowPostPaintEventArgs e)
{
SolidBrush b = new SolidBrush(this.dataGridView1.RowHeadersDefaultCellStyle.ForeColor);
e.Graphics.DrawString((e.RowIndex + 1).ToString(System.Globalization.CultureInfo.CurrentUICulture), this.dataGridView1.DefaultCellStyle.Font, b, e.RowBounds.Location.X + 20, e.RowBounds.Location.Y + 4);
}