Mostrar consulta con checkbox dentro de un datagridview en visual 2008

Cual es la mejor manera de realizar una consulta de una tabla hacia un datagridview que debe contener checkbox

Explico

Necesito realizar estas consultas

Tabla:personas

En el datagridview

Código datos apto

-------- --------- ----

P01 luis si

P02 pedro no

El datagridview debe quedar así

Código datos apto

-------- --------- -------

P01 luis (checkbox) tiene el check marcado

P02 pedro (checkbox) check sin marcar

He buscado por la web y se me hace muy confuso poder realizar esto aver si me puedas ayudar gracias de antemano

Mi consulta lo realizo de esta manera

 Public Sub consulta(ByVal g As DataGridView)
Conectar()
Ds. Tables. Clear()
Cn. Open()
 cmd.CommandText = "select codigo,datos,apto from personas"
 cmd.Connection = cn
 da.SelectCommand = cmd
 da.Fill(ds)
 dv = New DataView(ds.Tables(0))
 g.DataSource = dv
Cn.close

alguna ayuda...

1 Respuesta

Respuesta

El datagrid debe tener una columna en la cual le pasas el campo, el mismo detecta que es un bool y coloca un check, no hay nada que hacer, la herramienta lo hace de manera automatica

si claro como decía he visto por otro foros pero, hay mucha confusión, de realizar esto

aver si ayudas un poquito mas con el código porque no soy muy bueno en esto gracias

Da. Fills(ds)

g.datasource = ds.tables(0)

el código es casi lo mismo como lo tengo yo,

¿como hago para agregar los check al datagridview y con estos realizar mi consulta?

por ejemplo si pongo en el load del form lo siguiente

 Dim colBotones As New DataGridViewCheckBoxColumn()
 colBotones.Name = "colcheckbox"
 colBotones.HeaderText = "Apto"
 Me.DataGridView1.Columns.Add(colBotones)

me crea los checkbox ,

ahora como haría para que pueda realizar la consulta en los checkbox

¿Tu tienes el datagridview que cargue los datos de manera automática o creas cada columna que quieres que aparezca?

Si un campo esta definido de tipo true / false en la base de datos que tu le pasas al datasource, de manera automática coloca una columna de checkbox

¿No entiendo "ahora como haría para que pueda realizar la consulta en los checkbox"?

tengo en el datagridview que carga los datos automáticamente,

en el load del form tengo

 consulta()
Dim colBotones As New DataGridViewCheckBoxColumn()
 colBotones.Name = "colcheckbox"
 colBotones.HeaderText = "Apto"
 Me.DataGridView1.Columns.Add(colBotones)

el procedimiento consulta es la que esta arriba

si cargo el form me queda asi

código datos apto apto
-------- --------- --- -------
p01 luis si (checkbox)
p02 pedro no (checkbox)

cuando el datagridview debe quedar así
código datos apto
-------- --------- -------
p01 luis (checkbox) tiene el check marcado
p02 pedro (checkbox) check sin marcar

¿Tu aplicación es web o windows? Porque todo lo que te he dicho es para web

es para windows , y utilizo visual 2008 .

¿En la propiedad donde le indicas el nombre del campo que enlazas le estas colocando el nombre correcto del campo? Verifica eso

si le muestro esta igual , solo no se como enlazarlo con los checkbox

¿Cómo lo haces con las otras columnas?

se muestra de acuerdo al procedimiento que puse al comienzo y este

Public Sub consulta(ByVal g As DataGridView)
 conectar()
 ds.Tables.Clear()
 cn.Open()
 cmd.CommandText = "select codigo,datos,apto from personas" 
cmd.Connection = cn
 da.SelectCommand = cmd
 da.Fill(ds) 
dv = New DataView(ds.Tables(0))
 g.DataSource = dv
cn.close

como veras muestro tres columnas con este procedimiento aparte pongo en el load del form

Dim colBotones As New DataGridViewCheckBoxColumn()
 colBotones.Name = "colcheckbox"
 colBotones.HeaderText = "Apto"
 Me.DataGridView1.Columns.Add(colBotones)

en total en el datagridview me aparece 4 columnas como te explicaba mas arriba

¿Lo qué sucede es que solo creas la columna check en el load y las otras columnas no las creas de esta manera?

¿El campo que tu quieres representar como el check de que tipo es?

afirmativo solo creo la columna de los check en el load, y las otras columnas con el procedimiento.

el campo es char

En la propiedad binding o data binding de la columna la propiedad Checked= Eval("Tucolumna")

hola me podrías ayudar un poco mas o no tendrás por ahí un link de algún ejemplo sobre esto, porque en realidad no he encontrado nada que me ayude

gracias

hola gracias por el link , pero no me ayuda porque mi aplicación mía es con base de datos

Para que te funcione la columna de la tabla en la base de datos debe ser de tipo boolean, o sea en Sql Server Bit, en access el tipo True/False, etc dependiendo de la base de datos que utilices

claro lo tengo en sql server como indicas, pero no entiendo como lo muestro en los check la columna ("apto")

 cmd.CommandText = "select codigo,datos,apto from personas"

como lo relaciono con los check

colBotones.Checked= "Eval(apto)"

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas