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 :

GridView rafraichissement supression


Sujet :

ASP.NET

  1. #1
    Membre averti
    Inscrit en
    Avril 2008
    Messages
    39
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 39
    Par défaut GridView rafraichissement supression
    Bonjour,

    Explication du contexte :
    - je charge une liste d'objet dans le Page_Load de ma page que je bind à une gridView.
    - dans le RowDataBound, j'ajoute pour chaque ligne un imageButton dans une des colonnes de la grid et l'abonne à l'évènement Click afin de supprimer la ligne courante.

    Mon probleme:
    - étant donné que je charge la liste dans le page_load, il faut que je rafraichisse la page pour que la ligne supprimée disparaisse.
    - si je met mon chargement de la liste d'objet et mon binding dans le page_prerender, mon évènement Click de mes ImageButton ne fonctionne plus

    Que puis je faire ?

    Merci

  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
    Faire une métode privée que tu appeleras dans ton page_Load et dans ton event RowDeleted.
    Dans ta méthode privée, tu mettras tout ton code qui fait le bind avec ta gridview.

    Fix

  3. #3
    Membre averti
    Inscrit en
    Avril 2008
    Messages
    39
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 39
    Par défaut
    Merci.

    C'est la solution à laquelle je pensais également mais elle n'est pas très optimisée puisqu'elle implique de charger 2 fois la liste.
    Je voulais savoir si il y avait mieux ^^

    Sinon je ferais cette méthode lol

  4. #4
    Membre éprouvé
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    114
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2007
    Messages : 114
    Par défaut
    il y a déjà des options pour faire afficher par le gridview un bouton de suppression de la ligne courante.

  5. #5
    Membre averti
    Inscrit en
    Avril 2008
    Messages
    39
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 39
    Par défaut
    Oui, mais je voulais un imageButton

  6. #6
    Membre éprouvé
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    114
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2007
    Messages : 114
    Par défaut
    ben tu peux customiser l'affichage. passe en mode édition des colonnes et pour le commandfield qui correspond et modifie le "buttonType"

  7. #7
    Membre averti
    Inscrit en
    Avril 2008
    Messages
    39
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 39
    Par défaut
    hmm effectivement, il me semble que je peux faire ca.
    il faudra que je test ce soir

    merci

  8. #8
    Membre averti
    Inscrit en
    Avril 2008
    Messages
    39
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 39
    Par défaut
    Bon finalement je n'ai pas fait comme ca.

    J'ai concervé mon mode de fonctionnement (imageButton avec évènement Click)
    Je supprime en bdd l'élément et ensuite je le supprime de la datasource de mon grid et je Bind().

    Fonctionne nickel

    Merci

  9. #9
    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
    Quand tu dis que tu l'effaces de ta DataSource,
    Tu veux dire que tu gardes en Session ou ViewState ta liste, et que tu supprimes de la ?
    Ou bien, que tu refais ton select après avoir fait ton delete ?

    Fix

  10. #10
    Membre averti
    Inscrit en
    Avril 2008
    Messages
    39
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 39
    Par défaut
    Bah en fait, je fais un select dans le page_load (donc pas de Session).
    Donc après la suppression, je récupère grid.DataSource, je cast dans ma liste d'objets, je supprime l'objet qui doit dégager et je Bind().
    Ca m'évite de refaire un Select

  11. #11
    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
    et ca fonctionne ??? le grid.DataSource ?

  12. #12
    Membre averti
    Inscrit en
    Avril 2008
    Messages
    39
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 39
    Par défaut
    oui

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

Discussions similaires

  1. Problème rafraichissement gridview allowpaging
    Par radious dans le forum ASP.NET
    Réponses: 1
    Dernier message: 06/12/2011, 19h52
  2. Réponses: 4
    Dernier message: 31/05/2011, 17h30
  3. Réponses: 0
    Dernier message: 08/11/2009, 10h43
  4. Exception lors d'une supression dans un GridView
    Par LhIaScZkTer dans le forum ASP.NET
    Réponses: 1
    Dernier message: 18/06/2008, 17h57
  5. Probleme de rafraichissement d'un BDGrid
    Par marmotte dans le forum Bases de données
    Réponses: 10
    Dernier message: 28/05/2004, 18h07

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