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 :

problème d'ajout avec datagrid


Sujet :

ASP.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Mars 2003
    Messages
    315
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Mars 2003
    Messages : 315
    Par défaut problème d'ajout avec datagrid
    Bonjour tout le monde,
    j'ai encore un autre problème avec mon datagridje ne l'ai pas encore lié à un base de donnée, je veux avant tout pouvoir ajouter)
    j'aimerais pouvoir permettre à l'utilisateur d'ajouter des lignes dans mon datagrid. Pour ça j'ai créer des textbox pour qu'il rentre les différent champs du datagrid et ensuite il clque sur le bouton inserer. voici donc mon code lorsqu'il clique sur inserer
    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
    DataTable dt ;
    if(dgRenum.DataSource!=null)
    {
    dt=(DataTable)dgRenum.DataSource;
     
    }
    else
    {
    dt=new DataTable();
     
    // colonnes utilisées pour le traitement
    dt.Columns.Add(new DataColumn("CI", typeof(string)));
    dt.Columns.Add(new DataColumn("Cat", typeof(string)));
    // colonnes utilisées pour l'affichage à l'usager
    dt.Columns.Add(new DataColumn("Suff", typeof(string)));
    dt.Columns.Add(new DataColumn("Sequ", typeof(string)));
    dt.Columns.Add(new DataColumn("Montant", typeof(string)));
    }
    DataRow dr = dt.NewRow();
    dr[0] = txtCI.Text;
    dr[1] = txtCat.Text;
    dr[2] = txtSuff.Text;
    dr[3] = txtSequ.Text;
    dr[4] = txtMontant.Text;
     
     
    dt.Rows.Add(dr);
     
    dgRenum.DataSource = dt;
    dgRenum.DataBind();
    }
    Alors lorsque j'Exécute ma page, et que j'Ajoute une ligne, cela marche très bien., mais dès que je veux ajouter une deuxième ligne, ma ligne s'ajoute mais ça efface la première ligne ajoutée.
    je ne comprend donc pas pourquoi cela ne fonctionne pas, pouvez vous me donnez un coup de main
    merci
    shirya

  2. #2
    Membre chevronné
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    581
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2004
    Messages : 581
    Par défaut
    En faite je pense que ton DataSource est toujours null, car tu rafraichis ta page et donc comme on est en Web, ben le site ne retient pas le DataSource de la Grid.
    D'ou tu recrées chaque fois une table avec donc une seule ligne.
    Va falloir mettre la table dans un viewstate, mais ca peut être trop lourd à gérer.

    Fix

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Mars 2003
    Messages
    315
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Mars 2003
    Messages : 315
    Par défaut
    et il n'y aucn autre moyen de le faire?

  4. #4
    Membre chevronné

    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    481
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Janvier 2006
    Messages : 481
    Par défaut
    bonsoir,
    Perso j'ai fais ce developpement pas mal de fois (a une difference pres je n'utilise pas les datagrid issu de FORM)

    En fait je crée un context menu qui permet de faire (Ajout)
    Sur l'evenement, je fais : (code approximatif je n'ai pas VS sous la main, je te le donne demain)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    if(dt.columns.count != 0)
    {
    //creation de mes colonnes
    }
    DataRow dr = dt.NEwRow();
    //mes traitements sur ma Row
    dt.AddRow(dr);
    Et j'ajoute n lignes ...
    Demain je te donne le code exacte.
    Bonne soiree
    Notalp

Discussions similaires

  1. Problème d'ajout avec la Servlet/JSP et EJB
    Par FuneralRose dans le forum Servlets/JSP
    Réponses: 11
    Dernier message: 25/05/2012, 18h23
  2. Réponses: 1
    Dernier message: 21/05/2007, 11h48
  3. [VB 6.0] - problème avec Datagrid pour l'affichage de valeurs
    Par jimbololo dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 24/04/2007, 09h57
  4. [ASP.NEt]Problème d'affichage avec un DataGrid
    Par Irish dans le forum ASP.NET
    Réponses: 2
    Dernier message: 02/03/2007, 09h55
  5. [IE]Problème d'ajout de contenu avec innerHTML
    Par Pollux dans le forum Général JavaScript
    Réponses: 13
    Dernier message: 09/06/2006, 12h27

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