Échec de chargement viewstate
-
22-09-2019 - |
Question
J'ai une page ASPX qui charge dynamiquement des contrôles utilisateur: il y a un UpdatePanel qui détient ces contrôles (un à chaque fois). Quand je change un contrôle avec un autre, il échoue avec le message:
Impossible de charger viewstate. Le contrôle arbre dans lequel l'état d'affichage est en cours chargé doit correspondre à l'arbre de commande qui a été utilisé pour sauver viewstate pendant l'application précédente. Par exemple, lors de l'ajout de contrôle dynamique, la contrôles ajoutés pendant un must de retour en fonction du type et de la position de la contrôles ajoutés au cours de la première application.
Tous trois contrôles héritent de System.Web.UI.UserControl
. Peut-être que je peux résoudre le problème à faire:
- Charger trois contrôles à l'heure de début et puis cacher deux d'entre eux comme nous en avons besoin.
- Utilisez trois UpdatePanels, un pour chaque commande de l'utilisateur.
- Un conseil?
La solution
Assurez-vous que postbacks sont pas mises à jour des panneaux indésirables en définissant le mode conditionnel et à postback les mettre à jour manuellement.
Autres conseils
Lorsque vous ajoutez dynamiquement les contrôles utilisateur, vous assignez la propriété id? Et vous ajoutez à nouveau le contrôle, sur postback, définissant la propriété id à la même valeur?