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 :

comment faire pour qu'un objet garde les valeurs de ses champs lors d'un postback


Sujet :

ASP.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    zzozo32456
    Invité(e)
    Par défaut comment faire pour qu'un objet garde les valeurs de ses champs lors d'un postback
    bonjour,
    voila je debute dans le monde merveilleux de la poo et j'ai quelques petits soucis.
    Je me suis fait une classe commande avec quelques champs comme par exemple un numcommande et quelques autres.
    Dans une webform j'instancie mon objet vide.
    Lors d'un evenement sur la page comme par exemple le changement d'index sur un gridview je modifie le num commande. Le probleme c'est quand je veux retravailler sur cet objet dans un autre evenement: exemple le click d'un bouton. J'ai donc besoin de mon numcommande que j'ai attribué plus haut. seulement mon objet n'a pas garder ses valeurs. Comment je pourrais m'y prendre? C'est comme si au rechargement de la page l'objet était reinitialisé.

  2. #2
    Rédacteur

    Avatar de Jean-Michel Ormes
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Juillet 2007
    Messages
    1 838
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Services à domicile

    Informations forums :
    Inscription : Juillet 2007
    Messages : 1 838
    Par défaut
    Bonjour,

    Il faut tester si tu es dans le cas d'un PostBack ou non dans ton Page_Load

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
     
    protected void Page_Load(object sender, EventArgs e)
    {
       if (!IsPostBack)
       {
             // Remplir les objets ici
       }

  3. #3
    zzozo32456
    Invité(e)
    Par défaut
    bonjour jean michel,
    dans mon cas je ne pense pas que ce soit possible, en fait je récupère un numcommande lors de l'événement sur le gridview avec la propriété selectedatakey.
    Ducoup je ne peut pas vraiment l'initialiser dans le load.
    Apres c'est lors du click sur un bouton pour valider que j'aurais besoin de retravailler sur ces valeurs.

  4. #4
    zzozo32456
    Invité(e)
    Par défaut
    j'ai essayer par contre d'instancier l'objet dans le load au niveau du not ispostback. mais j'ai un probleme au niveau de la portée de l'objet dans ce cas je n'arrive plus du tout a y accéder depuis de mes événements sur la page.

  5. #5
    Membre très actif
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2008
    Messages
    233
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Janvier 2008
    Messages : 233
    Par défaut
    Tu as essayé de mettre ton objet dans l'objet session ?

  6. #6
    zzozo32456
    Invité(e)
    Par défaut
    tres bon idée, le coup de la session^^
    je pense que je vais faire ca.
    Parcontre donc c'est bien ca l'objet perd les valeurs qui lui ont été attribuées lors d'un postback?

  7. #7
    Rédacteur

    Avatar de Jean-Michel Ormes
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Juillet 2007
    Messages
    1 838
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Services à domicile

    Informations forums :
    Inscription : Juillet 2007
    Messages : 1 838
    Par défaut
    Dans ce cas, tu peux envisager de parcourir les lignes du GridView pour récupérer la ligne sélectionnée et donc le numcommande lors du Click sur le Button.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
     
    foreach (GridViewRow row in tonGridView.Rows)
    {
         if (row == tonGridView.SelectedRow)
         {
              string value = tonGridView.DataKeys[gvr.RowIndex].Value.ToString();
         }
    }
    Cela implique que ton GridView ait pour DataKeyNames ton numcommande côté aspx.

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

Discussions similaires

  1. Réponses: 12
    Dernier message: 14/04/2009, 20h10
  2. [E-03] Comment faire pour qu'un objet s'enfuie quand la souris approche
    Par moilou2 dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 25/03/2009, 16h52
  3. Réponses: 11
    Dernier message: 29/09/2008, 10h57
  4. Réponses: 2
    Dernier message: 04/03/2008, 11h32
  5. [MySQL] Comment faire pour avoir un lien sur les pages suivantes/précédentes
    Par Meewix dans le forum PHP & Base de données
    Réponses: 13
    Dernier message: 21/10/2006, 09h32

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