Foros del Web » Programando para Internet » ASPX (.net) »

el checkbox en el datagrid me esta ahogando

Estas en el tema de el checkbox en el datagrid me esta ahogando en el foro de ASPX (.net) en Foros del Web. 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 ...
  #1 (permalink)  
Antiguo 08/02/2010, 08:00
Avatar de gakutaru  
Fecha de Ingreso: agosto-2005
Ubicación: frente a mi NtbK
Mensajes: 239
Antigüedad: 18 años, 8 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.
  #2 (permalink)  
Antiguo 09/02/2010, 21:19
 
Fecha de Ingreso: mayo-2004
Ubicación: Guadalajara, Jalisco, México
Mensajes: 724
Antigüedad: 20 años
Puntos: 6
Respuesta: el checkbox en el datagrid me esta ahogando

Tienes que usar columas tipo item template..

Cita:
<asp:GridView ID="asdasd" runat="server">
<Columns>
<asp:TemplateField>
<ItemTemplate>
<asp:CheckBox ID="chkItem" runat="server" />
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
  #3 (permalink)  
Antiguo 10/02/2010, 05:16
Avatar de gakutaru  
Fecha de Ingreso: agosto-2005
Ubicación: frente a mi NtbK
Mensajes: 239
Antigüedad: 18 años, 8 meses
Puntos: 6
Respuesta: el checkbox en el datagrid me esta ahogando

Cita:
Iniciado por Stream Ver Mensaje
Tienes que usar columas tipo item template..
eso funciona bien cuando conosco la cantidad de columnas, pero como es dinamica, no la puedo usar.
  #4 (permalink)  
Antiguo 10/02/2010, 12:01
 
Fecha de Ingreso: enero-2006
Mensajes: 293
Antigüedad: 18 años, 3 meses
Puntos: 4
Respuesta: el checkbox en el datagrid me esta ahogando

en la base de datos.. tu campo bit... permite nulls? hay registros que tengan valor null?
  #5 (permalink)  
Antiguo 10/02/2010, 12:15
Avatar de gakutaru  
Fecha de Ingreso: agosto-2005
Ubicación: frente a mi NtbK
Mensajes: 239
Antigüedad: 18 años, 8 meses
Puntos: 6
Respuesta: el checkbox en el datagrid me esta ahogando

Cita:
Iniciado por osvier Ver Mensaje
en la base de datos.. tu campo bit... permite nulls? hay registros que tengan valor null?
sep, todos son null, trato de crear una matris con checkbox en los que no hay datos.
  #6 (permalink)  
Antiguo 10/02/2010, 12:31
 
Fecha de Ingreso: enero-2006
Mensajes: 293
Antigüedad: 18 años, 3 meses
Puntos: 4
Respuesta: el checkbox en el datagrid me esta ahogando

Talvez por ahi este el problema... según yo, cuando el gridview agrega automaticamente las columnas.. por default si el tipo de dato es bit, usa un checkbox...

un tipo bit tiene 2 valores.. 1 o 0... igual que el checkbox... checked o unchecked..

Ahora, tu campo tiene 3 valores posibles.. 1, 0 o NULL... supongo que por esta razón no te esta agregando el checkbox..

Lo que yo haria es actualizar todos tus registros de NULL a 0..

aparte.. en SQL Server, cambiaría el campo a NO permitir nulls, y le pondría el valor default 0..

*** este valor default sirve, si tu query INSERT no le da valor a cierto campo, envez de ponerlo NULL pone el valor default..
  #7 (permalink)  
Antiguo 10/02/2010, 12:37
Avatar de gakutaru  
Fecha de Ingreso: agosto-2005
Ubicación: frente a mi NtbK
Mensajes: 239
Antigüedad: 18 años, 8 meses
Puntos: 6
Respuesta: el checkbox en el datagrid me esta ahogando

Cita:
Iniciado por osvier Ver Mensaje
Talvez por ahi este el problema... según yo, cuando el gridview agrega automaticamente las columnas.. por default si el tipo de dato es bit, usa un checkbox...

un tipo bit tiene 2 valores.. 1 o 0... igual que el checkbox... checked o unchecked..

Ahora, tu campo tiene 3 valores posibles.. 1, 0 o NULL... supongo que por esta razón no te esta agregando el checkbox..

Lo que yo haria es actualizar todos tus registros de NULL a 0..

aparte.. en SQL Server, cambiaría el campo a NO permitir nulls, y le pondría el valor default 0..

*** este valor default sirve, si tu query INSERT no le da valor a cierto campo, envez de ponerlo NULL pone el valor default..
puede ser, le are unas pruebas, pero creo q se debe a que llamo un valor en la base de dtos q aun no e creado q es nulll.... oka lo probare ^^

Etiquetas: checkbox, datagrid, aspx
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 08:04.