Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Colocar el número de fila agregada en encabezado de Datagridview (datagridrow)

1,466 views
Skip to first unread message

DiegoRomero

unread,
Jul 1, 2008, 7:18:48 PM7/1/08
to
Hola

Alguien sabe como colocar el número de fila agregada en el encabezado
automáticamente.

Actualmente tengo una columna Autoincrement en el DataTable origen de
datos, pero al eliminar una fila, el consecutivo se descontrola.

Ejemplo:
Agrego fila 1
Agrego fila 2

Elimino fila 1

Agrego otra fila pero esta queda con el valor 3

Gracias


Diego M Romero

SoftJaén

unread,
Jul 2, 2008, 12:30:19 AM7/2/08
to
"DiegoRomero" preguntó:

Hola, Diego:

Ese es el clásico comportamiento de las columnas autonuméricas. Lo único que
se me ocurre es que, en lugar de utilizar valores autonuméricos, utiliza un
tipo de dato entero para la columna, cuyos valores tendrás que
especificárselos manualmente para que simule una columna autonumérica.

Para enumerar todas las columnas existentes actualemtne en el control
DataGridView, puedes utilizar el siguiente bucle:

For n = 0 To DataGridView1.Rows.Count - 1
Dim dr As DataGridViewRow = Me.DataGridView1.Rows(n)
dr.Cells(0).Value = n + 1
Next

Pero para ello, tendrías que ocultar los encabezados de las filas del
control, y hacer que la primera columna del control simule el encabezado de
las filas. Por ejemplo, en el evento «Load» del formulario ejecutarías algo
parecido a lo siguiente:

With Me.DataGridView1
.RowHeadersVisible = False
.AllowUserToAddRows = False
.Columns(0).DefaultCellStyle = .RowHeadersDefaultCellStyle
.Columns(0).HeaderText = String.Empty
.Columns(0).Width = .RowHeadersWidth
.Columns(0).ReadOnly = True
End With

Al ser la primera columna de sólo lectura, tendrás que añadirle el número de
la fila correspondiente cuando el usuario vaya añadir nuevas filas, y
ejecutar el bucle para renumerar las filas, cuando el usuario elimine
cualquiera de ellas.

Un saludo

--
Enrique Martínez
[MS MVP - VB]

Nota informativa: La información contenida en este mensaje, así como el
código fuente incluido en el mismo, se proporciona «COMO ESTÁ», sin
garantías de ninguna clase, y no otorga derecho alguno. Usted asume
cualquier riesgo al poner en práctica, utilizar o ejecutar lo recomendado o
sugerido en el presente mensaje.

DiegoRomero

unread,
Jul 2, 2008, 6:26:21 PM7/2/08
to
Muchas gracias por su respuesta,
0 new messages