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 :

[VB.net]Récupéré des valeurs dans un datagrid apres checkbox cochés


Sujet :

ASP.NET

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    29
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 29
    Points : 19
    Points
    19
    Par défaut [VB.net]Récupéré des valeurs dans un datagrid apres checkbox cochés
    Bonjour a tous,

    voilà ça fait 2 semaines que j'ai débuté dans le monde merveilleux de l'asp.net
    Bon voici mon premier gros probléme et pouratant j'ai cherché sur le site mais rien n'y fait pour mon appli
    En esperant trouver une âme charitable je m'explique:

    J'ai une colonne de checkbox dans un datagrid et j'aimerais pouvoir récuperer les valeurs d'une autre colonne liés a leurs checkbox cochés respective dans ce meme datagrid et retourné ses valeurs dans un label (pour l'instant ...)

    Pour remplir mon datagrid j'utilise un datareader via une requete sql imbriquée sur 2 vues.
    j'ai mis l'option autogenerate a true malheureusement si je la passe a false je ne recupere plus mes données issus de la requete.

    voici mon code pouvez me dire ce qu'il cloche car quand je clique sur un bouton pour valider mes check box cochés ils ne se passent rien je suis un peu paumer là;

    mon code en html:


    Columns>
    <asp:TemplateColumn HeaderText="Selectionner">
    <ItemTemplate>
    <asp:CheckBox id="CheckBox1" Enabled="true" runat="server" EnableViewState="True" Checked="false" Visible="true"></asp:CheckBox>
    </ItemTemplate> </asp:TemplateColumn>

    mon code behind:


    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CheckBox1.CheckedChanged

    If Not Page.IsPostBack Then

    Dim items As DataGridItem
    Dim myCheckbox As System.Web.UI.WebControls.CheckBox


    For items in datagrid1.items
    myCheckbox = CType(items.FindControl("CheckBox2"),_ System.Web.UI.WebControls.CheckBox) //recherche mes checkbox dans le datagrid
    If myCheckbox.Checked = True Then
    Dim st As String = DataGrid1.Items(0).Cells(2).Text //les valeurs que je voudrais recuperer se trouve dans la 3eme colonne du datagrid (cells=2)
    Label2.Text = st //je rentre mes valeurs trouvées dans le label
    End If

    Next

    End If

    autre precision je suis en webform

    merci par avance de votre aide

  2. #2
    Nouveau membre du Club
    Inscrit en
    Janvier 2005
    Messages
    25
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 25
    Points : 29
    Points
    29
    Par défaut
    cette discution pourrai te venir en aide
    http://www.developpez.net/forums/sho...d.php?t=163859

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    29
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 29
    Points : 19
    Points
    19
    Par défaut
    Ok merci
    c'est bon j'ai trouvé aujourd'hui voici mon code
    par contre il y a un probleme je recupere seulement la derniere valeur cochés et non toutes les valeurs que je coches! quelqu'un a t 'il une idée
    j'ai essayer avec un if not ispostback rien ne change

    Private Sub dg1_ItemCommand(ByVal source As Object, ByVal e As DataGridCommandEventArgs) Handles DataGrid1.ItemCommand
    Dim lb As String
    Dim lbl As String
    'ouverture de la connexion
    SqlConnection1.Open()

    'test si click sur le bouton avec la propriété CommandName
    If e.CommandName <> "Check" Then Exit Sub
    'Boucle sur chaque ligne du datagrid et test si les checkbox sont cochées
    For Each oDGItem As DataGridItem In DataGrid1.Items
    If CType(oDGItem.FindControl("CheckBox1"), CheckBox).Checked Then
    'Recupere la valeur désirée
    Dim label As String = DataGrid1.Items(0).Cells(2).Text

    label.text = oDGItem.Cells(2).Text // met dans un label mais pas toutes les valeurs!!


    End If
    Next

  4. #4
    Nip
    Nip est déconnecté
    Rédacteur

    Inscrit en
    Juin 2004
    Messages
    963
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 963
    Points : 1 076
    Points
    1 076
    Par défaut
    Ca serait quand meme pas mal que tu mettes ton code en forme, il y a les balises "code" pour ca; sinon ton erreur vient du fait que tu affectes a ton label la valeur de ta cellule en cours; si tu ne crees pas une chaine de caractere contenant tes valeurs a afficher ca ne marchera pas;
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     StringBuilder builder = new  StringBuilder();
    //A chaque passage dans ta boucle
    builder.Append(oDGItem.Cells(2).Text);
    builder.Append(";");
    //A la sortie de ta boucle tu peux affecter la valeur du StringBuilder a ton label

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

Discussions similaires

  1. Tri des valeurs dans un DBGrid
    Par soviet dans le forum C++Builder
    Réponses: 3
    Dernier message: 11/06/2015, 14h18
  2. [Débutant] rechercher des valeurs dans une datagrid à partir d'une textbox
    Par franklinw dans le forum C#
    Réponses: 6
    Dernier message: 09/10/2012, 17h30
  3. fonction récupérant des valeurs dans une fonction popup...
    Par petitsims dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 20/01/2005, 14h51
  4. Décaler des valeurs dans un tableau
    Par sh2003 dans le forum Langage
    Réponses: 6
    Dernier message: 20/03/2004, 16h01

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