Como Enumarar filas en DataGridView en c#

publicado por: Anonymous

Tengo una duda de como poder enumarar las filas en un datagridView en c#, hice esto pero quiero que se muestre automaticamente sin tener que agregar una columna

private void dataGridViewCatalogoPartesTotal_CellValueNeeded(object sender, DataGridViewCellValueEventArgs e)
    {
        if (e.RowIndex >= 0 && e.ColumnIndex == Columna.Index)
        {
            e.Value = e.RowIndex + 1;
        }
    }

Y este fue el resultado

imagen1

Pero yo quiero enumerarlo de esta forma

imagen2

solución

para mostrar el número de fila en el encabezado de la fila, podríamos usar el evento RowPostPaint del control DataGridView.

Y luego se aplica lo que ya tienes, pero esta vez en vez de dibujarlo en una colunma nueva lo genera en la que trae por defecto el datagrid

this.dgvUserDetails.RowPostPaint += new System.Windows.Forms.DataGridViewRowPostPaintEventHandler(this.dgvUserDetails_RowPostPaint);

    private void dgvUserDetails_RowPostPaint(object sender, DataGridViewRowPostPaintEventArgs e)
    {
            using (SolidBrush b = new SolidBrush(dgvUserDetails.RowHeadersDefaultCellStyle.ForeColor))
            {
                  e.Graphics.DrawString((e.RowIndex + 1).ToString(), e.InheritedRowStyle.Font, b, e.RowBounds.Location.X + 10, e.RowBounds.Location.Y + 4);
            }
    }
Respondido por: Anonymous

Leave a Reply

Your email address will not be published. Required fields are marked *