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 :

Génération de gridview à la volée


Sujet :

ASP.NET

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2010
    Messages
    21
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Octobre 2010
    Messages : 21
    Par défaut Génération de gridview à la volée
    Bonjour à tous!

    J'ai besoin de vous pour éclairer ma lanterne

    Je génère des gridview en c# et pour les alimenter je créé des datatable à la main, qui réunissent des données provenant d'un fichier csv et d'une base de données.

    L'affichage actuel est le suivant:



    Maintenant je ne sais pas comment faire pour ajouter les radio buttons devant chaque cellule et faire en sorte que chaque colonne soit un groupe.

    J'ai déjà trouvé deux trois infos sur le net, mais le soucis est que je n'arrive pas à comprendre comment adapter la chose pour mon cas, en sachant que tout est généré en C#.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    grid = new GridView();
     
    //dt = dataTable
    grid.DataSource = dt;
    grid.DataBind();
     
    PlaceHolder_duplicates.Controls.Add(label);
    PlaceHolder_duplicates.Controls.Add(grid);
    Merci

  2. #2
    Membre expérimenté
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2009
    Messages
    229
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2009
    Messages : 229
    Par défaut
    Je pense qu'il faut implémenter la fonction RowDataBound, regarde le code ce dessous :
    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 void GridView_RowDataBound(Object sender, GridViewRowEventArgs e)
    {
     
      if(e.Row.RowType == DataControlRowType.DataRow)
      {
        CheckBox cb = new CheckBox();
        // cb.id = ... and other control setup
        // add your control here:
        e.Row.Cells[0].Controls.Add(cb);
      }
    }
    .
    .
    .
    grid.RowDataBound += new GridViewRowEventHandler(GridView_RowDataBound);

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2010
    Messages
    21
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Octobre 2010
    Messages : 21
    Par défaut
    Merci bien pour ta réponse!

    Je vais explorer cette piste aujourd'hui et je te tiens au courant!
    Mais ça me semble être une bonne idée merci

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2010
    Messages
    21
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Octobre 2010
    Messages : 21
    Par défaut
    Merci beaucoup pour ton aide!

    C'est difficile de s'y retrouver quand on ne connaît pas toutes les méthodes qui existent.

    Par contre, ta méthode remplace le contenu de la cellule, est-ce que c'est correcte de procéder de la façon suivante:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
            protected void GridView_RowDataBound(Object sender, GridViewRowEventArgs e)
            {
              if(e.Row.RowType == DataControlRowType.DataRow)
              {
                  Label l = new Label();
                  l.Text = e.Row.Cells[12].Text;
                  CheckBox cb = new CheckBox();
                // add your control here:
                e.Row.Cells[12].Controls.Add(cb);
                e.Row.Cells[12].Controls.Add(l);
              }
            }

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

Discussions similaires

  1. génération d'image à la volée avec GD
    Par Samolo dans le forum Langages serveur
    Réponses: 0
    Dernier message: 21/06/2012, 06h53
  2. [1.x] Site symfony multilingue et génération de contenu à la volée
    Par etoileweb dans le forum Symfony
    Réponses: 2
    Dernier message: 01/11/2011, 14h44
  3. Génération dynamique gridview
    Par stephtbest dans le forum ASP.NET
    Réponses: 0
    Dernier message: 05/02/2009, 16h03
  4. Réponses: 1
    Dernier message: 21/02/2007, 19h11
  5. [JSF] Génération de contrôles à la volée
    Par cjarnot dans le forum JSF
    Réponses: 1
    Dernier message: 25/10/2005, 13h21

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