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 :

[vb.net] problème de viewstate


Sujet :

ASP.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Inscrit en
    Février 2005
    Messages
    270
    Détails du profil
    Informations forums :
    Inscription : Février 2005
    Messages : 270
    Par défaut [vb.net] problème de viewstate
    Bonjour,

    voici l'erreur :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Échec du chargement de viewstate. L'arborescence du contrôle sur lequel viewstate est chargé doit correspondre à l'arborescence du contrôle qui a été utilisé pour enregistrer viewstate lors de la demande précédente. Par exemple, lors de l'ajout dynamique de contrôle, les contrôles ajoutés lors d'une publication doivent correspondre au type et à la position des contrôles ajoutés lors de la demande initiale.
    Que vous dire j'ai un webusercontrol qui hérite d'un autre. Ceux-ci permettent de gérer des onglets : une table html qui contient deux tables asp la première contient les onglets (tablecell) et l'autre une tablecell à remplir. Ca ca marche sans problème avec le webusercontrol parent, l'enfant possède un datagrid dans la tablecell à afficher.

    Quand je clique sur un onglet pas de problème, le datagrid s'affiche, mais si je clique sur un autre onglet, ce message s'affiche

    une idée :

  2. #2
    Membre éclairé
    Inscrit en
    Février 2005
    Messages
    270
    Détails du profil
    Informations forums :
    Inscription : Février 2005
    Messages : 270
    Par défaut
    a priori le problème vient pas du datagrid, mais du fait des éléments présents dans la partie à afficher, quelqu'il soit

  3. #3
    Membre éclairé
    Inscrit en
    Février 2005
    Messages
    270
    Détails du profil
    Informations forums :
    Inscription : Février 2005
    Messages : 270
    Par défaut
    donc pour ceux que ca intéresse

    en fait dans ma tablecell, il y avait des éléments html ce qui apparemment ne lui plaisait pas :

    j'ai donc remplacé le table par un <asp:table> et maintenant c'est bon

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    35
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 35
    Par défaut
    Jai le meme probleme sauf que ca ne le fais que s'il y a des drop down list avec autopostback a true, et qu epasser de <table> a <asp:table> ne change rien snif ...

  5. #5
    Membre éclairé
    Inscrit en
    Février 2005
    Messages
    270
    Détails du profil
    Informations forums :
    Inscription : Février 2005
    Messages : 270
    Par défaut
    as-tu regarder si tu avais d'autres éléments html et non aspx dans ce que tu affiches dynamiquement ?

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    35
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 35
    Par défaut
    oui donc en fait j'ai localisé le probleme (mais pas résolu):

    le programe fait :

    1) 1er chargement d ela page
    -crée les controles et ajoute dans un panel

    2) pour chaque autre chargement (apres postback)
    -recré les memes controles avec meme id et ajoute au panel

    Le probleme arrive dans 2) lorsque je rajoute en plus des controles

    Donc le principe c'est que lorsque je modofie la page dynamiquement avec une fonction qui sa lance au pageload, il faut que tous les controles que je recré garde la meme place et le meme type.

    Exemple : au premier chargement je cré une ddl id="ddl1" (position = 0) avec deux valeure possible (aller on va dire "1" et "2")
    si apres dans mon pageload (donc a chaque chargement autre que le premier du a un postback) je fais une fonction qui regarde la valeur de ma ddl et qui si cette valeur est "1" crée une deuxieme ddl identique et l'ajoute a la page.

    Si j'ajoute tout simplement cette ddl tout se passe bien car l'arborescence du wiewstate d'avant le pageload n'a pas été modifié

    par contre imaginon que j'avais aussi un autre controle (un textbox) avant cet ajout, et que j'ajoute la nouvele ddl entre la premiere ddl et la textbox, dans ce cas j'ai cette erreur car j'ai modifier le viewstate

    je passe de ddl1 txtbox1 a ddl1 ddl2 txtbox1 donc transformation de txtbox1 en ddl2 et ca il aime pas ... dans mon cas j'ajoute des controles la ou avant il y avait du html c'est ca ki me fait planter..mais je ne trouve pas comment faire, meme un ViewState.clear avant la creation des controle ne fais rien. need help !! ;þ

  7. #7
    Membre averti
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    35
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 35
    Par défaut
    J'ai résolu le probleme en desactivant le viewstate pour mes lavel contenant le html

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

Discussions similaires

  1. [VB.NET] Problème d'installation d'une appli VB.NET
    Par ppzmr dans le forum Windows Forms
    Réponses: 6
    Dernier message: 26/11/2004, 10h09
  2. [VB.NET] Problème avec un OptionButton dans Excel 2003
    Par alfprod dans le forum Windows Forms
    Réponses: 3
    Dernier message: 09/09/2004, 13h40
  3. [VS.NET] Problème connection Source safe
    Par Nip dans le forum EDI/Outils
    Réponses: 2
    Dernier message: 24/06/2004, 15h30
  4. [VB.NET] Problème sur composant comboBox hérité
    Par SergeF dans le forum Windows Forms
    Réponses: 3
    Dernier message: 08/06/2004, 14h54
  5. [CR][ASP.NET] Problème d'affichage du rapport
    Par David.V dans le forum SAP Crystal Reports
    Réponses: 3
    Dernier message: 20/04/2004, 12h39

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