Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Contrôle calendar

4 réponses
Avatar
Guillaume
Bonjour,
J'ai une page contenant un contrôle calendar. Lorsque je clique dessus, la
page remonte au debut.
Comment peut-on éviter cela ?

Merci d'avance.

4 réponses

Avatar
Franck Quintana
Bonjour,
Il faut mettre la propriété Page.MaintainScrollPositionOnPostBack à true.

Cordialement,
--
Franck Quintana
Active+ Software
http://www.activeplus.com/
Avatar
Guillaume
Bonjour,

J'ai inséré cette propriété dans mon web.config. En soi ça fonctionne mais
je rajoute une difficulté : mon contrôle calendar est inséré dans un
contrôle wizard. Du coup lorsque l'utilisateur passe à l'étape suivante, la
feuille garde bien la position de la barre de défilement... et l'utilisateur
est maintenant contraint de remonter à chaque fois...
Existe-t-il un moyen de modifier le positionnement des barres de défilement
du navigateur client lors d'un clic sur un contrôle ?

Merci d'avance.

"Franck Quintana" a écrit :

Bonjour,
Il faut mettre la propriété Page.MaintainScrollPositionOnPostBack à true.

Cordialement,
--
Franck Quintana
Active+ Software
http://www.activeplus.com/



Avatar
Franck Quintana
Bonjour,

Vous pouvez lors du clic, mettre à jour la propriété
MaintainScrollPositionOnPostBack à false.
Lors du rendu de la page les barres de défilement ne seront pas replacées.

Voici le bout de code généré par ASP.NET pour replacer les barres de
défilement

if (this.MaintainScrollPositionOnPostBack &&
!this._requireScrollScript)
{
this.ClientScript.RegisterHiddenField("__SCROLLPOSITIONX",
this._scrollPositionX.ToString(CultureInfo.InvariantCulture));
this.ClientScript.RegisterHiddenField("__SCROLLPOSITIONY",
this._scrollPositionY.ToString(CultureInfo.InvariantCulture));
this.ClientScript.RegisterStartupScript(typeof(Page),
"PageScrollPositionScript", "rntheForm.oldSubmit =
theForm.submit;rntheForm.submit =
WebForm_SaveScrollPositionSubmit;rnrntheForm.oldOnSubmit =
theForm.onsubmit;rntheForm.onsubmit =
WebForm_SaveScrollPositionOnSubmit;rn" + (this.IsPostBack ?
"rntheForm.oldOnLoad = window.onload;rnwindow.onload =
WebForm_RestoreScrollPosition;rn" : string.Empty), true);
this.RegisterWebFormsScript();
this._requireScrollScript = true;
}


Cordialement

--
Franck Quintana
Active+ Software
http://www.activeplus.com/
Avatar
Paul Bacelar
Les contrôles AJAX (anciennement ATLAS) répondent à ce genres de
problématiques.

http://ajax.asp.net/
--
Paul Bacelar
MVP VC++

"Franck Quintana" wrote in message
news:45dd7ad3$0$27382$
Bonjour,

Vous pouvez lors du clic, mettre à jour la propriété
MaintainScrollPositionOnPostBack à false.
Lors du rendu de la page les barres de défilement ne seront pas replacées.

Voici le bout de code généré par ASP.NET pour replacer les barres de
défilement

if (this.MaintainScrollPositionOnPostBack &&
!this._requireScrollScript)
{
this.ClientScript.RegisterHiddenField("__SCROLLPOSITIONX",
this._scrollPositionX.ToString(CultureInfo.InvariantCulture));
this.ClientScript.RegisterHiddenField("__SCROLLPOSITIONY",
this._scrollPositionY.ToString(CultureInfo.InvariantCulture));
this.ClientScript.RegisterStartupScript(typeof(Page),
"PageScrollPositionScript", "rntheForm.oldSubmit =
theForm.submit;rntheForm.submit =
WebForm_SaveScrollPositionSubmit;rnrntheForm.oldOnSubmit =
theForm.onsubmit;rntheForm.onsubmit =
WebForm_SaveScrollPositionOnSubmit;rn" + (this.IsPostBack ?
"rntheForm.oldOnLoad = window.onload;rnwindow.onload =
WebForm_RestoreScrollPosition;rn" : string.Empty), true);
this.RegisterWebFormsScript();
this._requireScrollScript = true;
}


Cordialement

--
Franck Quintana
Active+ Software
http://www.activeplus.com/