J'ai beaucoup de contrôles Web créés dynamiquement dans une page ASP.NET. Dans certains scénarios de publication (lorsque je clique sur un LinkButton), je souhaite ignorer le chargement de l'ancien arborescence des contrôles Web et générer immédiatement la nouvelle arborescence. Malheureusement, lorsque je génère le nouvel arbre, le viewstate du vieil arbre est chargé dans celui-ci. Je veux être en mesure de désactiver le processus de chargement viewstate pour ce scénario spécifique, mais après le chargement de la nouvelle arborescence, l'état de vue devrait fonctionner normalement. J'ai déjà résolu une partie du problème, en remplaçant la méthode LoadViewState des contrôles web, mais, malheureusement, cela désactive le viewstate spécifique pour le contrôle, pas pour ses enfants aussi (boîtes de texte, boutons, etc.).Désactiver le chargement de viewstate pour les contrôles enfants
Est-ce possible?
Merci.
Oui, je charge effectivement les nouveaux contrôles en cas LinkButton.Clicked qui vient après Page_Load, mais la façon dont fonctionne ASP.NET, le chargement de ViewState être différé jusqu'à ce que vous chargiez de nouveaux contrôles dans un contrôle enraciné (celui qui a des parents tout le chemin jusqu'à la page). –
Ah, contrôles ajoutés dynamiquement. C'est toujours un tel désordre .. :) Je ne sais pas comment votre code est structuré, mais peut-être que vous pouvez vous accrocher dans votre événement de chargement des contrôles dynamiques et créer la nouvelle arborescence dans ce gestionnaire? –
Pas vraiment sûr de ce que vous vouliez dire par "accrochez-vous à l'événement de chargement des contrôles dynamiques et créez le nouvel arbre dans ce gestionnaire". –