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 :

[.NET 2 C#] EnabledViewstate=false ne marche pas


Sujet :

ASP.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de gdkenny
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    251
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Juillet 2005
    Messages : 251
    Par défaut [.NET 2 C#] EnabledViewstate=false ne marche pas
    Bonjour,

    j'ai un hiddenfield sur un aspx qui stocke une valeur que j'incrémente à partir de plusieurs ascx qui sont contenu dans l'aspx.

    Je me suis rendu compte qu'après les postbacks la valeur de cet hiddenfield était conservée, j'ai donc mis enabledviewstate à false pour ce dernier, mais ca n'a rien changé, la valeur est toujours conservée à travers les postbacks.

    Du coup je réinitialise moi même la valeur après le chargement du viewstate mais c'est bidon.

    On ne peux pas désactiver le viewstate juste pour un contrôle?

    Merci

  2. #2
    Membre Expert Avatar de guitoux1
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    1 011
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Juin 2006
    Messages : 1 011
    Par défaut
    Je penses que l'alimentation de ton HiddenFiled n'a rien avoir avec le ViewState.
    Dans ASP.Net 2, les champ de formulaire son ré-alimenté après un PostBack non pas par le viewState mais par les valeur dans la collection des POST.

    Pour faire ce que tu veux faire, je penses qu'en utilisant un champ Hidden HTML et en le mettant à runat=server, ça devrait fonctionner (il n'y a pas l'implémentation de la réalimentation de la valeur dans les HtmlControls)

  3. #3
    Membre Expert Avatar de guitoux1
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    1 011
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Juin 2006
    Messages : 1 011
    Par défaut
    Désolé, mon post précédent est faux. Les HtmlControls remettent aussi la valeur du POST dans le champ :

    (source du HtmlInputHidden) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    protected virtual bool LoadPostData(string postDataKey, NameValueCollection postCollection)
    {
        string text = this.Value;
        string text2 = postCollection.GetValues(postDataKey)[0];
        if (!text.Equals(text2))
        {
            base.ValidateEvent(postDataKey);
            this.Value = text2;
            return true;
        }
        return false;
    }

  4. #4
    Membre éclairé Avatar de gdkenny
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    251
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Juillet 2005
    Messages : 251
    Par défaut
    Donc c'est non pas par le viewstate mais par la collection POST que mon champ hiddenfield est re-rempli...

    Je vais vérifier ca, par contre peut tu m'expliquer la différence entre le viewstate et la collection POST?

    Merci!!

  5. #5
    Membre Expert Avatar de guitoux1
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    1 011
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Juin 2006
    Messages : 1 011
    Par défaut
    Ben la collection POST c'est le truc classique en HTTP. le contenu de tes champs de formulaire qui sont envoyés à la page cible.

    Le ViewState est propre à ASP.Net. C'est un mécanisme qui permet de garder les informations des contrôles ASP.Net d'un Post-Back à l'autre (utiliser pour les gridview, labels, ...). Les données sont sérialisées et stocker dans un champ Hidden de ta page.

  6. #6
    Membre émérite Avatar de kheironn
    Homme Profil pro
    Chef de projets technique C# / MVC / .Net
    Inscrit en
    Février 2007
    Messages
    822
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Chef de projets technique C# / MVC / .Net
    Secteur : Conseil

    Informations forums :
    Inscription : Février 2007
    Messages : 822
    Par défaut
    le viewState est tout de même un "truc" assez obscure... il me semble que l'on ne peut pas vraiment le manipuler à notre guise, non ?

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

Discussions similaires

  1. IE8 : return false ne marche pas
    Par teraDev dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 05/10/2010, 18h56
  2. <pages validateRequest="false"/> ne marche pas
    Par padej450 dans le forum ASP.NET
    Réponses: 4
    Dernier message: 13/07/2010, 14h28
  3. Application.EnableEvents = False ne marche pas !
    Par statquant dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 20/08/2009, 10h01
  4. TabSheet avec enabled à false ne marche pas?
    Par codial dans le forum Delphi
    Réponses: 8
    Dernier message: 06/03/2007, 12h46
  5. Réponses: 3
    Dernier message: 16/02/2007, 15h35

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