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

VB.NET Discussion :

Boutons créé dynamiquement dans un tableau


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Rédacteur
    Avatar de Franck.H
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2004
    Messages
    6 951
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Service public

    Informations forums :
    Inscription : Janvier 2004
    Messages : 6 951
    Par défaut Boutons créé dynamiquement dans un tableau


    J'ai un petit problème sur des boutons qui sont créés dynamiquement dans un tableau, la procédure que je leur assigne n'est pas déclenchée, voici le code (raccourci mais qui illustre tout le procédé) :
    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
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
      Private Sub GenererTableCommande()
            Dim lst As List(Of stCommande) = PropListeCommande
            Dim tb As New Table()
            Dim headR As New TableRow()
            Dim hCell1, hCell2, hCell3, hCell4 As New TableCell
            hCell1.Text = "Titre Article"
            hCell2.Text = "Quantité"
            hCell3.Text = "Taille"
            hCell4.Text = ""
     
            headR.Cells.Add(hCell1)
            headR.Cells.Add(hCell2)
            headR.Cells.Add(hCell3)
            headR.Cells.Add(hCell4)
     
            tb.Rows.Add(headR)
            For Each o As stCommande In lst
                Dim row As New TableRow()
                Dim cell1 As New TableCell()
                Dim cell2 As New TableCell()
                Dim cell3 As New TableCell()
                Dim cell4 As New TableCell()
                Dim link As New Button()
     
                link.Text = "supprimer"
                AddHandler link.Click, AddressOf BoutonTableau_OnClick
     
                cell1.Text = o.NomArticle.ToString()
                cell2.Text = o.Quantite.ToString()
                cell3.Text = o.IdTaille.ToString()
                cell4.Controls.Add(link)
     
                row.Cells.Add(cell1)
                row.Cells.Add(cell2)
                row.Cells.Add(cell3)
                row.Cells.Add(cell4)
     
                tb.Rows.Add(row)
            Next
     
            phPanier.Controls.Add(tb)
        End Sub
     
     
        Private Sub BoutonTableau_OnClick(sender As Object, e As EventArgs)
            Dim btn As Button = DirectCast(sender, Button)
     
            '...
        End Sub
     
        Private Sub deleteArticle(ByVal pIdArticle As Decimal)
     
            Dim lst As List(Of stCommande) = PropListeCommande
            For Each o As stCommande In lst
                pIdArticle = o.IdArticle.ToString()
                If (pIdArticle = o.IdArticle.ToString()) Then
     
                    lst.Remove(o)
                    Exit For
     
                End If
     
            Next
            '...
        End Sub
    Cela m'a l'air pourtant correcte mais a aucun moment les boutons entre dans la procédure BoutonTableau_OnClickSi jamais vous voyez de quoi il s'agit...

    d'avance
    Mon Site
    Ma bibliothèque de gestion des chaînes de caractères en C

    L'imagination est plus importante que le savoir. A. Einstein

    Je ne répond à aucune question technique par MP, merci d'avance !

  2. #2
    Membre expérimenté Avatar de Delaney
    Homme Profil pro
    Developpeur VB amateur
    Inscrit en
    Mars 2014
    Messages
    148
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Developpeur VB amateur
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Mars 2014
    Messages : 148
    Par défaut
    Salut,

    J'ai testé ton code en plaçant des boutons dans un panel, plusieurs panels, et une listbox et cela fonctionne, la sub BoutonTableau_OnClick s'active bien chque fois pour chaque bouton.

    C'est peut-être idiot comme question mais es-tu sur que tu peux créer un bouton dans ta Cell : cell4.Controls.Add(link)
    si oui, est ce que le bouton est actif? tu peux cliquer dessus même s'il se passe rien? tu perd peut-être une liaison parce qu'il est dans la Cell ?

  3. #3
    Rédacteur
    Avatar de Franck.H
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2004
    Messages
    6 951
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Service public

    Informations forums :
    Inscription : Janvier 2004
    Messages : 6 951
    Par défaut
    Citation Envoyé par Elthorn Voir le message
    Salut,

    J'ai testé ton code en plaçant des boutons dans un panel, plusieurs panels, et une listbox et cela fonctionne, la sub BoutonTableau_OnClick s'active bien chque fois pour chaque bouton.

    C'est peut-être idiot comme question mais es-tu sur que tu peux créer un bouton dans ta Cell : cell4.Controls.Add(link)
    si oui, est ce que le bouton est actif? tu peux cliquer dessus même s'il se passe rien? tu perd peut-être une liaison parce qu'il est dans la Cell ?


    Désolé pour la réponse tardive mais oui je peux ajouter des boutons dans des cellules d'un tableau et le bouton est actif.
    Je me suis également posé la question de la perte de la liaison avec la procédure car hors du tableau cela fonctionne
    Mon Site
    Ma bibliothèque de gestion des chaînes de caractères en C

    L'imagination est plus importante que le savoir. A. Einstein

    Je ne répond à aucune question technique par MP, merci d'avance !

Discussions similaires

  1. Réponses: 3
    Dernier message: 02/06/2011, 18h28
  2. Réponses: 6
    Dernier message: 07/11/2008, 10h26
  3. Réponses: 16
    Dernier message: 06/08/2006, 23h45
  4. Ajout de ligne dynamique dans un tableau (Incompatible IE)
    Par seb34 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 8
    Dernier message: 26/05/2006, 11h03
  5. [VB.NET] - affichage dynamique dans un tableau
    Par karibouxe dans le forum ASP.NET
    Réponses: 8
    Dernier message: 20/06/2005, 15h07

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