Foros del Web » Programación para mayores de 30 ;) » .NET »

DatagridView y checkbox column

Estas en el tema de DatagridView y checkbox column en el foro de .NET en Foros del Web. Hola compañeros del foro Les presento my gran problema Tengo un datagridview que me carga datos de una vista de una tabla en sql y ...
  #1 (permalink)  
Antiguo 01/12/2009, 10:20
Avatar de jaullo  
Fecha de Ingreso: abril-2009
Mensajes: 994
Antigüedad: 15 años
Puntos: 30
DatagridView y checkbox column

Hola compañeros del foro

Les presento my gran problema

Tengo un datagridview que me carga datos de una vista de una tabla en sql y estos datos los filtro desde un textbox por un codigo, hasta aqui bien. El problema es que a ese grid le agrego una columna tipo checkbox en tiempo de ejecucion.

La idea es que el usuario pueda marcar con un check solo las columnas que quiera actualizar, llene los datos y al guarda solo esos datos se reflejen en la bd.

Tengo el siguiente codigo

For r As Integer = 0 To dtmantxcobrar.Rows.Count - 1
If dtmantxcobrar.Rows(r).Cells(14).Value = True Then 'esta es la columna del checkbox

If dtmantxcobrar.Rows(r).Cells(13).Value > 0 Then

'aqui va la sentencia de guardar que tambien me toma los datos del grid algo asi:
i.notainterna = dtmantxcobrar.CurrentRow.Cells(9).Value

End If

End If
Next

El problema es que si marco por ejemplo 3 columnas en cualquier parte del grid solamente se me actualiza la ultima fila del grid, las demas no se reflejan.

Como podria hacer para actualizar de esta forma.

Saludos,
  #2 (permalink)  
Antiguo 01/12/2009, 16:45
Avatar de eperedo  
Fecha de Ingreso: septiembre-2009
Ubicación: Perú
Mensajes: 654
Antigüedad: 14 años, 7 meses
Puntos: 16
Respuesta: DatagridView y checkbox column

Usa un for each para recorrer las filas. Es mejor usar el nombre de la columna para hacer referencia a la misma, así es más entendible.
Código vb.net:
Ver original
  1. Private Sub recorreFilas()
  2.         For Each dr As DataGridViewRow In Me.DataGridView1.Rows
  3.             If dr.Cells("Discontinued").Value.ToString() = "True" Then
  4.                 Me.actualizarDatos(Convert.ToInt32(dr.Cells("ProductId").Value))
  5.             End If
  6.         Next
  7.     End Sub
Lo que hace este código es actualizar todos los productos que estén descontinuados (Columna Discontinued en True) con un nuevo precio.

Como idea creo que pueda ayudarte, cualquier cosa me avisas y busco el código completo para subirlo.
__________________
Eduardo Peredo
Wigoin
  #3 (permalink)  
Antiguo 06/12/2009, 18:01
Avatar de jaullo  
Fecha de Ingreso: abril-2009
Mensajes: 994
Antigüedad: 15 años
Puntos: 30
Respuesta: DatagridView y checkbox column

Gracias me ha sido de provecho tu orientacion.

Al final esto mas un codigo especial me funcionaron, el codigo especial lo que hace es que al presionar el check inmediatamente el valor se vuelve true de lo contrario seguiria en false hasta tanto no se presiones otra celda
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 19:28.