ASP.NET Lancer tache asynchrone pendant refresh d'updatepanel - ASP - Programmation
Marsh Posté le 27-06-2013 à 10:38:31
Ce qui se passe, je pense, c'est que ton bouton se comporte comme un formulaire classique, c'est à dire que quand tu clic dessus, c'est la page tout entière qui est rechargée.
Une solution serait peut-être de passer par l'updatepanel. Essaye dans un premier temps de simplement déplacer ton bouton à l'intérieur de l'updatepanel.
Si ca fonctionne et que tu veux garder le bouton à l'extérieur du panel, il y a une config un peu spécifique à mettre en place. De mémoire, passer le champ UpdateMode de l'UpdatePanel à Conditionnal, et ajouter les évènements (triggers) qui vont s'effectuer en asynchrone à la main (le tick du timer et le clic du bouton à priori)
Marsh Posté le 01-07-2013 à 10:36:01
Merci pour cette réponse x1fr.
J'ai placé mon button à cet endroit :
Code :
|
J'ai enlevé l'attribut autopostback.
Ce qu'il se passe maintenant :
-au chargement de la page il y a bien une réactualisation toutes les deux secondes de ma gridview
-quand je clique sur le bouton, le compteur se frise
-au bout d'un certain temps (je suppose la durée de la tache lancée par le bouton) la gridview se met à jour et le timer est bloqué, il ne tick plus.
Marsh Posté le 03-07-2013 à 18:06:07
Nan désolé, j'ai manipulé des updatepanels il y a quelques temps et j'avais eu des soucis aussi avec les évenements qui déclenchent les appels asynchrones un peu comme ça, maintenant que le bouton est dans le panel, je ne vois pas trop pourquoi le timer s'arrete
Marsh Posté le 31-07-2013 à 10:47:37
Bon merci quand même...
Si quelqu'un d'autre a une idée...
Marsh Posté le 26-06-2013 à 15:47:14
Salut à tous,
J'ai créé un UserControl.
A l'intérieur j'y ai mis un updatepanel, un bouton et un objectdatasource.
Dans l'updatepanel j'ai mis un timer et une gridview.
Ce que j'aimerais que mon code fasse :
1-l'updatepanel rafraichit la gridview toutes les 2 secondes.
2-Lorsque le bouton est cliqué je voudrais qu'une tache asynchrone soit lancée pendant que la gridview continue de se rafraichir.
Voilà mon code :
Et la partie VB :
Mon problème :
Dès que je clique sur le bouton la page freeze.
Comme si le timer était bloqué.
Tout reprend lorsque la tache asynchrone est terminée et alors la gridview se rafraichit.
J'ai essayé avec un second updatepanel (contenant le bouton), avec un timer javascript ça ne fonctionne jamais.
Que fais je de mal ?
Merci de votre aide.