Visual Basic.NET - Comprobar boolean y asignar a checkbox

   
Vista:

Comprobar boolean y asignar a checkbox

Publicado por Ramon (2 intervenciones) el 14/04/2015 10:55:35
Buenos días, no dejo de darle vueltas y no se como solucionarlo, por mas que busco no encuentro nada en internet.
Tengo un Datatable conectado a unas tablas en SQL Server.
Tengo unos campos Bit y necesito comprobar si es true o false y ponerlo en un checkbox.
Estaba probando esto:

Refracción.CheckCefaleas.Checked = CBool(dtrefrac.Rows(0)("cef"))
y me da este error: La conversión del tipo DBNull en el tipo Boolean no es válida.
(Todos los campos en la tabla están como 0 , 1)

También probé esto y me daba otro error.
dim bol as boolean
dtrefrac.Rows(0)("cef")=Bol
If bol=true Then
Refracción.CheckCefaleas.checked = True
End If
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Comprobar boolean y asignar a checkbox

Publicado por Horroroso (46 intervenciones) el 14/04/2015 16:29:42
Hola, el error que te marca significa que que al menos un valor esta en Null (en blanco)

Puedes usar esto:

1
Refracción.CheckCefaleas.Checked = (not (isDBNull(dtrefrac.Rows(0)("cef")) OrElse cbool(dtrefrac.Ros(0)("cef")))

Con esto si es null te va a poner false o convertira en booleano.

Tambien puedes usar:
1
2
3
4
5
if isDBNull(dtrefrac.Rows(0)("cef")) then
     Refracción.CheckCefaleas.Checked = false
else
     Refracción.CheckCefaleas.Checked = cbool(dtrefrac.Ros(0)("cef"))
end if

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Comprobar boolean y asignar a checkbox

Publicado por Ramon (2 intervenciones) el 14/04/2015 19:49:04
Gracias! con el If funciona perfecto, con la otra función no me marca el Check. Pero me sirve con el if, y gracias a eso me he dado cuenta que estaba consultando el sitio equivocado por eso siempre me daba como Null...Para matarme...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar