Ver Mensaje Individual
  #1 (permalink)  
Antiguo 08/02/2010, 08:00
Avatar de gakutaru
gakutaru
 
Fecha de Ingreso: agosto-2005
Ubicación: frente a mi NtbK
Mensajes: 239
Antigüedad: 19 años, 4 meses
Puntos: 6
Exclamación el checkbox en el datagrid me esta ahogando

hola, necesito poner un checkbox en el datagrid, pero e recorrido varias paginas y visto muchas soluciones, pero no las entiendo, no hayo como poner una checkbox en mi datagrid.
les muestro lo que llevo.

Código vb:
Ver original
  1. Dim dt As New DataTable()
  2.         Dim dr As DataRow
  3.         Dim i As Integer
  4.  
  5.         strSelectPregunta = "Select * From BancoPregunta Order by Dimension "
  6.         cmdSelectPregunta = New SqlCommand(strSelectPregunta, conDesempeno)
  7.  
  8.             dt.Columns.Add(New DataColumn("idPregunta", GetType(Integer)))
  9.             dt.Columns.Add(New DataColumn("Pregunta", GetType(String)))
  10.             dt.Columns.Add(New DataColumn("Dimension", GetType(String)))
  11.            
  12.         Dim strSelectGerencias As String
  13.         Dim cmdSelectGerencias As SqlCommand
  14.         Dim dtrSelectGrenecias As SqlDataReader
  15.         Dim j As Integer = 0
  16.    
  17.         strSelectGerencias = "Select * From XXX Order by XXX "
  18.         cmdSelectGerencias = New SqlCommand(strSelectGerencias, conDesempeno)
  19.         conDesempeno.Open()
  20.         dtrSelectGrenecias = cmdSelectGerencias.ExecuteReader
  21.         While dtrSelectGrenecias.Read
  22.             dt.Columns.Add(New DataColumn(dtrSelectGrenecias("XXX"), GetType(Boolean)))
  23.             j += 1
  24.         End While
  25.         conDesempeno.Close()
  26.        
  27.         Dim k As Integer = 0
  28.         conDesempeno.Open()
  29.         dtrSelectPregunta = cmdSelectPregunta.ExecuteReader
  30.         While dtrSelectPregunta.Read
  31.             dr = dt.NewRow()
  32.             i = 0
  33.             dr(i) = dtrSelectPregunta("idPregunta") '0
  34.            i = i + 1 '1
  35.            dr(i) = dtrSelectPregunta("Pregunta") '1
  36.            i = i + 1 '2
  37.            dr(i) = dtrSelectPregunta("Dimension") '2
  38.            
  39.             While k < j
  40.                 i += 1
  41.                 dr(i) = dtrSelectPregunta("Elejido")
  42.                 k += 1
  43.             End While
  44.            
  45.             dt.Rows.Add(dr)
  46.         End While
  47.         Dim dv As New DataView(dt)
  48.         conDesempeno.Close()
  49.         dgrBcoHist.DataSource = dv
  50.         dgrBcoHist.DataBind()
  51.         conDesempeno.Close()

les explico un poco

dt.Columns.Add(New DataColumn("idPregunta", GetType(Integer)))
dt.Columns.Add(New DataColumn("Pregunta", GetType(String)))
dt.Columns.Add(New DataColumn("Dimension", GetType(String)))

declaro los headers del datagrid

While dtrSelectGrenecias.Read
dt.Columns.Add(New DataColumn(dtrSelectGrenecias("XXX"), GetType(Boolean)))
j += 1
End While

listo hacia la derecha las opciones XXX, es un valor que recojo puesto que es dinamico. y tipo boolean para que sean checkbox

While k < j
i += 1
dr(i) = dtrSelectPregunta("Elejido")
k += 1
End While


asigno las checkbox teoricas. 'Elejido' en la base de datos es tipo Bit que es binario

mi problema es que esto no muestra ninguna checkbox, y tenia la idea de que al declarar boolean y el tipo en la base de datos esta mostraria automaticamente la checkbox.



si algn tiene un ejemplo que funcione sobre como agregar chechkbox dinamicamente en VB, le agradecere x siempre, xq no doy con una solucion.