• Viernes 8 de Noviembre de 2024, 20:05

Autor Tema:  Recuperar datos de un checkboxlist  (Leído 4080 veces)

pisamagu

  • Nuevo Miembro
  • *
  • Mensajes: 7
    • Ver Perfil
Recuperar datos de un checkboxlist
« en: Jueves 14 de Mayo de 2009, 10:48 »
0
Hola a todos.
Estoy haciendo la intranet de una federacion y cuando el usuario quiere añadir una empresa nueva rellena un formulario donde hay un checkboxlist y marca los distintos sectores de actividad con los que esta relacionado esa empresa.
Hay una parte donde puede modificar esos datos o visualizarlos, entonces me conecto a la base de datos y los formularios se completan con la informacion que hay en la base.
Lo que quiero es que se marquen las opciones que el usuario marco la primera vez visualizarlos y si los quiere modificar o añadir nuevos que no las tenga que marcar de nuevo.
Cuando inserto los datos por primera vez en la base de datos ingresa los valores separados por puntos y comas, pero cuando quiero recuperarlos no se como hacerlo en el checkboxlist.
Bueno espero que puedan ayudarme.
Muchas Gracias

dlplenin

  • Miembro activo
  • **
  • Mensajes: 44
  • Nacionalidad: ec
    • Ver Perfil
Re: Recuperar datos de un checkboxlist
« Respuesta #1 en: Sábado 16 de Mayo de 2009, 05:55 »
0
hola

        Dim a As String = "0;2" 'aqui pones el valor que obtienes de la base de datos , en este ejemplo se supone q obtienes de la BDD los indices que selecciono cuando guardaste en la BDD

        Dim opciones As String() = a.Split(";")

        For i As Integer = 0 To opciones.Length - 1
            Me.CheckBoxList1.Items(opciones(i)).Selected = True
        Next


saludos

pisamagu

  • Nuevo Miembro
  • *
  • Mensajes: 7
    • Ver Perfil
Re: Recuperar datos de un checkboxlist
« Respuesta #2 en: Sábado 16 de Mayo de 2009, 12:17 »
0
Hola!
Muchas gracias por contestar,lo probare el lunes y ya te cuento si me funciona.

Gracias,saludos

pisamagu

  • Nuevo Miembro
  • *
  • Mensajes: 7
    • Ver Perfil
Re: Recuperar datos de un checkboxlist
« Respuesta #3 en: Lunes 18 de Mayo de 2009, 16:34 »
0
Hola!
perdona es q soy un poco torpe y esto no me funciona xq no selecciona las casillas ya marcadas.mi codigo es:

.vb
Protected Sub checksecteur_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles checksecteur.SelectedIndexChanged
        Dim i As Integer
        Dim a As String
        a = chainecheck.Text
        Dim opciones As String() = a.Split(";")
        For i = 0 To opciones.Length - 1
            Me.checksecteur.Items(opciones(i)).Selected = True
        Next i

    End Sub

.aspx
 <asp:ControlParameter ControlID="chainecheck" Name="secteuractivite" PropertyName="Text"  Type="String" />
secteuractivite es la variable de la base de datos donde esta la informacion.

<asp:CheckBoxList ID="checksecteur" runat="server" RepeatColumns="2" AutoPostBack="True" Height="146px" Width="494px">
                                <asp:ListItem>Agroalimentaire</asp:ListItem>
                                ....
                            </asp:CheckBoxList>

Tengo que poner algo mas o quitar algo?

Muchas gracias

pisamagu

  • Nuevo Miembro
  • *
  • Mensajes: 7
    • Ver Perfil
Re: Recuperar datos de un checkboxlist
« Respuesta #4 en: Martes 19 de Mayo de 2009, 16:18 »
0
HOla,OK,ya me funciona pero ahora quiero meter el checkboslist dentro de un formview.

Sabeis como?? porque cuando lo inserto dentro no funciona.

Muchas gracias

pisamagu

  • Nuevo Miembro
  • *
  • Mensajes: 7
    • Ver Perfil
Re: Recuperar datos de un checkboxlist
« Respuesta #5 en: Miércoles 20 de Mayo de 2009, 14:51 »
0
Hola!! x fin funciona todo, no me lo creo, bueno pongo el codigo x si acaso alguien necesita algo parecido:

Este es para mostrar los datos:
 Protected Sub checksecteur1_onload(ByVal sender As Object, ByVal e As System.EventArgs)

        Dim checksecteur As CheckBoxList = FormView1.FindControl("checksecteur1")

        Dim i, j As Integer
        Dim a As String
        Dim chainecheck1 As DataView = CType(SqlDataSource1.Select(DataSourceSelectArguments.Empty), DataView)
        a = chainecheck1(0)("secteuractivite")
        Dim opciones() As String = a.Split(";")
        For i = 0 To opciones.Length - 1
            For j = 0 To checksecteur.Items.Count - 1
                If checksecteur.Items(j).Text = opciones(i) Then
                    checksecteur.Items(j).Selected = True
                End If
            Next j
        Next i


    End Sub

Para editarlos:
    Protected Sub checksecteur2_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs)
        Dim checksecteur As CheckBoxList = FormView1.FindControl("checksecteur2")
        Dim chainecheck As Label = FormView1.FindControl("chainecheck")
        chainecheck.Text = ""
        Dim i As Integer
        For i = 0 To checksecteur.Items.Count - 1
            If checksecteur.Items(i).Selected = True And chainecheck.Text <> "" Then
                chainecheck.Text = chainecheck.Text & ";" & checksecteur.Items(i).Text
            ElseIf checksecteur.Items(i).Selected = True And chainecheck.Text = "" Then
                chainecheck.Text = checksecteur.Items(i).Text
            End If
        Next i

    End Sub

Gracias x vuestra ayuda

dlplenin

  • Miembro activo
  • **
  • Mensajes: 44
  • Nacionalidad: ec
    • Ver Perfil
Re: Recuperar datos de un checkboxlist
« Respuesta #6 en: Domingo 31 de Mayo de 2009, 06:13 »
0
disculpa x no haberte contestado, acabo de ver tus mensajes

me alegro q hayas encontrado la solución

saludos