IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

ASP.NET Discussion :

Probleme sur une CheckBoxList


Sujet :

ASP.NET

  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Février 2011
    Messages
    312
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2011
    Messages : 312
    Par défaut Probleme sur une CheckBoxList
    Bonjour

    J'ai une CheckBoxList et je voudrais savoir les CheckBox cochées quand je clic sur un bouton

    ma CheckBoxList :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    <asp:CheckBoxList ID="CbxHeures" runat="server" 
     AutoPostBack="True" RepeatDirection="Horizontal">
            <asp:ListItem Value="8">8h</asp:ListItem>
            <asp:ListItem Value="9">9h</asp:ListItem>
            <asp:ListItem Value="10">10h</asp:ListItem>
            <asp:ListItem Value="11">11h</asp:ListItem>
            <asp:ListItem Value="12">12h</asp:ListItem>
            <asp:ListItem Value="13">13h</asp:ListItem>
    </asp:CheckBoxList>
    Mon bouton :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    Sub btnHeureOK_onclick(ByVal Sender As Object, ByVal e As EventArgs)
            Dim I As Integer
            For I = 0 To CbxHeures.Items.Count - 1
                If CbxHeures.Items(I).Selected Then
                    Dim H_OK As String = CbxHeures.Items(I).Selected.ToString
                    If H_OK = "true" Then
                        lblH_OK.Text = "Sélectionné"
                    Else
                        lblH_OK.Text = "Non sélectionné"
                    End If
                End If
            Next
    End Sub
    Quand je clic sur mon bouton j'ai non-selectionné que la CheckBox soit cochées ou non

    Pouvez-vous me dire où est l'erreur
    Merci

  2. #2
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Février 2003
    Messages
    2 190
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2003
    Messages : 2 190
    Par défaut
    C'est la propriété Checked que tu dois vérifier et non Selected

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Février 2011
    Messages
    312
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2011
    Messages : 312
    Par défaut
    Quand je saisi le code la propriété Checked n'est pas sur la liste

  4. #4
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Février 2003
    Messages
    2 190
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2003
    Messages : 2 190
    Par défaut
    Quand tu debug CbxHeures.Items(I) Est de quel type?

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Février 2011
    Messages
    312
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2011
    Messages : 312
    Par défaut
    quand je fais F11 et coche et clic sur le bouton je ne passa pas par le debug

  6. #6
    Membre éprouvé
    Avatar de Pelote2012
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2008
    Messages
    925
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Haute Vienne (Limousin)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2008
    Messages : 925
    Billets dans le blog
    2
    Par défaut pas sûr, mais ...
    en faisant cette boucle tu écrase et ne garde dans le label que le l'état de la dernière case cochée, non?
    En plus, j'ai l'impression que ton code ne peut pas passer par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    lblH_OK.Text =  "Non sélectionné"
    Perso je coderai plus comme ça:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    Sub btnHeureOK_onclick(ByVal Sender As Object, ByVal e As EventArgs)
            Dim I As Integer
            For I = 0 To CbxHeures.Items.Count - 1
                If CbxHeures.Items(I).Selected Then
                         lblH_OK.Text = lblH_OK.Text  & "Sélectionné;"
                 Else
                        lblH_OK.Text = lblH_OK.Text  & "Non sélectionné;"
                 End If
            Next
    End Sub

  7. #7
    Membre actif Avatar de ToshiroSama
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Octobre 2010
    Messages
    77
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2010
    Messages : 77
    Par défaut
    >> Un simple copier / coller de ton Code
    >> Premier test en mode Debug

    >> tu test avec "true" alors que c'est "True" ... tu manipule des chaine de caractère là donc "true" et différent de "True"...


  8. #8
    Rédacteur

    Avatar de Jean-Michel Ormes
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Juillet 2007
    Messages
    1 838
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Services à domicile

    Informations forums :
    Inscription : Juillet 2007
    Messages : 1 838
    Par défaut
    Je ne vois pas pourquoi tu testes comme ceci :

    Puisque dans aucun de tes ListItem tu n'as cette valeur. D'où l'utilité du debug pour vérifier tes valeurs.

    Essayes ceci pour voir :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Sub btnHeureOK_onclick(ByVal Sender As Object, ByVal e As EventArgs)
            Dim I As Integer
            For I = 0 To CbxHeures.Items.Count - 1
                If CbxHeures.Items(I).Selected Then
                    lblH_OK.Text += CbxHeures.Items(I).Selected.ToString
                End If
            Next
     
           lblH_OK.Text += "Sélectionné(s)"
    End Sub

  9. #9
    Membre éprouvé
    Avatar de Pelote2012
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2008
    Messages
    925
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Haute Vienne (Limousin)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2008
    Messages : 925
    Billets dans le blog
    2
    Par défaut euh
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    lblH_OK.Text += CbxHeures.Items(I).Selected.ToString
    ça n'afficherai pas "true", un peu dommage
    mieu serai quelquechose du genre
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    lblH_OK.Text += CbxHeures.Items(I).value
    ?

  10. #10
    Membre actif Avatar de ToshiroSama
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Octobre 2010
    Messages
    77
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2010
    Messages : 77
    Par défaut
    Tu souhaite afficher ce qui est sélectionné et non sélectionnés.
    avec 1 sélectionné 2 non sélectionné ... j'ai cru comprendre cela.

    Ton code fonctionne sauf que le test avec "true" n'est pas bon parce que tu utilise la valeur d'un boolean ( ToString ) ce qui donne True ou False et non true ou false.

    essaye ce code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    Protected Sub Button1_Click(ByVal sender As Object, ByVal e As EventArgs) Handles Button1.Click
            Dim I As Integer
     
            lblH_OK.Text = String.Empty
     
            For I = 0 To CbxHeures.Items.Count - 1
                If CbxHeures.Items(I).Selected Then
                    Dim H_OK As String = CbxHeures.Items(I).Selected.ToString
                    If H_OK = "True" Then
                        lblH_OK.Text += (CbxHeures.Items(I).Value + "Sélectionné ")
                    Else
                        lblH_OK.Text += (CbxHeures.Items(I).Value + " non Sélectionné ")
                    End If
                End If
            Next
        End Sub

    Au même temps tu peux ou bien virer
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     If CbxHeures.Items(I).Selected Then
    ou bien
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Else
    lblH_OK.Text += (CbxHeures.Items(I).Value + " non Sélectionné "
    Voilà donc ce que j'aurais mis.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    Protected Sub Button1_Click(ByVal sender As Object, ByVal e As EventArgs) Handles Button1.Click
            Dim I As Integer
     
            lblH_OK.Text = String.Empty
     
            For I = 0 To CbxHeures.Items.Count - 1
     
                Dim H_OK As String = CbxHeures.Items(I).Selected.ToString
                If H_OK = "True" Then
                    lblH_OK.Text += (CbxHeures.Items(I).Value + "Sélectionné ")
                Else
                    lblH_OK.Text += (CbxHeures.Items(I).Value + " non Sélectionné ")
                End If
     
            Next
        End Sub

  11. #11
    Membre éclairé
    Profil pro
    Inscrit en
    Février 2011
    Messages
    312
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2011
    Messages : 312
    Par défaut
    Merci à tous pour votre aide
    C'est OK

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. probleme sur une info bulle avec onMouseOver
    Par pouss dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 08/02/2006, 09h40
  2. [VB.NET] Probleme sur une DropDownList
    Par xG-Hannibal dans le forum ASP.NET
    Réponses: 4
    Dernier message: 10/01/2006, 11h08
  3. Probleme sur une requete
    Par ager1912 dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 11/07/2005, 10h16
  4. Probleme sur une fonction vérif
    Par PrinceMaster77 dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 29/10/2004, 13h25
  5. Problème sur une cmd avec AWK
    Par OrangeBud dans le forum Linux
    Réponses: 3
    Dernier message: 02/06/2004, 10h51

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo