David REI
Messages postés33Date d'inscriptionmardi 18 septembre 2007StatutMembreDernière intervention27 septembre 2007
-
18 sept. 2007 à 20:53
yassinebennani
Messages postés249Date d'inscriptionsamedi 13 octobre 2007StatutMembreDernière intervention 2 mai 2014
-
1 juin 2012 à 19:01
Bonsoir à tous!
Je travaille actuellement sur un site Web en utilisant le framework Ajax ASP.NET.
J'utilise une masterpage contenant une barre de navigation chargée à partir du sitemap
à la racine du site. Etant donné que la masterpage est assez lourde ( Flash, animation, etc..),
je souhaiterais pouvoir naviguer dans les différentes pages de mon site simplement en modifiant le
contenu du ContentPlaceHolder, sans recharger la masterpage... J'ai compris le mécanisme du ScriptManager
et de l'update panel, j'ai dejà réalisé quelques projets avec mais dans ce cas précis je ne pense pas que je puisse m'en sortir
qu'avec ces controles ... Faut-il réaliser du code javascript spécifique et le déclarer dans le script manager ou existe t'il une
façon "propre" de s'en sortir ? Merci pour votre lumière :)
Je te conseille d'utiliser de l'XMLHTTPRequest pour ton chargement de page en no-refresh, mais la ce n'a plus rien avoir avec de l'asp, c'est du Javascript...
David REI
Messages postés33Date d'inscriptionmardi 18 septembre 2007StatutMembreDernière intervention27 septembre 2007 27 sept. 2007 à 09:11
Oui j'y ai pensé, mais charger une page avec un XmlHttpRequest réinitialise ma masterpage, or je souhaiterais seulement mon contentPlaceHolder mais on dirait que le ViewState n'aime pas que je change mon arborescence des controles comme ça :/
Vous n’avez pas trouvé la réponse que vous recherchez ?
mcferson
Messages postés33Date d'inscriptionjeudi 7 septembre 2006StatutMembreDernière intervention 1 juin 2012 1 juin 2012 à 09:45
Manifestement, personne n'a résolu le problème.
Nous sommes en 2012, aujourd'hui, j'ai également besoin d'une solution pour ne rafraichir QUE le contentplaceholder.
OR le UpdatePanel est totalement raciste avec la majorité des trucs qu'on peut essayer de mettre dedans. si on place un contentplaceholder, ce dernier est tagué en erreur, disant que UpdatePanel ne contient pas d'attribut contentplaceholder valide.
J'ai des zones de saisie ou de choix en dehors de la zone de contenu et je ne veux pas que TOUTE la page soit rafraichie quand je change de contenu, seulement ce qui doit y avoir dans le placeholder.
Je ne trouve rien nulle part d'assez précis et expliqué qui puisse aider. Et sur msdn, ça expose un cas qui n'a rien à voir, sans guère plus d'explication.
yassinebennani
Messages postés249Date d'inscriptionsamedi 13 octobre 2007StatutMembreDernière intervention 2 mai 2014 1 juin 2012 à 19:01
Tout simplement vous n'avez rien compris à l'architecture des applications client / serveur et spécialement les application qui tourne sur la plateforme Asp.Net.
Alors il faut bien lire et comprendre le méchanisme et le page life cycle d'une page asp.net.
la seule et unqiue solution de ce que tu cherche à faire n'est pas dans aucun cas la master page car celle si n'a pas été conçu pour régler le problème de la soit disante (performance de chargement) mais plutôt pour un Souci de maintenance et de centralistation de l'interface utilisateur.
si tu cherche à ce que ton système de navigation ne se charge qu'une seule fois alors la solution est une page simple web asp.net avec une iframe celle-ci charge une autre page asp.net qui représente le contenu.
Si tu veux voir une illustration de ce que je dis télécharge cet exemple créé par microsoft pour une démo des charts controls ils utilisent le même mécanisme.
Les fins justifient les moyens_________________________________________________
Yassine BENNANI - Ingénieur en génie logiciel & multimédia (Consultant SI)