winform 中要让 DataGridView 显示出每行的行号来,并不需要用sql等语句写。
要不想像在页面的最左面显示行号,在属性Columns选项中,添加一列,不要命名Name,只有命名显示出来的 HeaderText 就可以了,当然要将 RowHeadersVisible 设为 false。
可以在DataGirdView的RowPostPaint事件中进行绘制。加入下端即可。
private void dgvGridView_RowPostPaint(object sender, DataGridViewRowPostPaintEventArgs e)
{
Rectangle rectangle = new Rectangle(e.RowBounds.Location.X,
e.RowBounds.Location.Y,
this.dgvGridView.RowHeadersWidth - 4,
e.RowBounds.Height);
TextRenderer.DrawText(e.Graphics, (e.RowIndex + 1).ToString(),
this.dgvGridView.RowHeadersDefaultCellStyle.Font,
rectangle,
this.dgvGridView.RowHeadersDefaultCellStyle.ForeColor,
TextFormatFlags.VerticalCenter | TextFormatFlags.Right);
}
要不想像在页面的最左面显示行号,在属性Columns选项中,添加一列,不要命名Name,只有命名显示出来的 HeaderText 就可以了,当然要将 RowHeadersVisible 设为 false。
加上下面这句就不会显示出最后一条空记录了
this.dataGridView1.AllowUserToAddRows = false;属性里设置也可