Ich habe eine Webanwendung, die mit VB und Ajax funktioniert. Ich benutze Updatepanels, um das irritierende "Flimmern" bei Postbacks auf dem Server zu vermeiden.Warum muss ein Button-Steuerelement zweimal geklickt werden?
Ich hätte gerne eine Schaltfläche Steuerelement im Updatepanel selbst definiert (versucht, es nach außen zu verschieben und einige katastrophale Fehler, so dass es dort gelassen), die das aktuelle Panel nicht sichtbar und ein Geschwister-Panel sichtbar macht. Dies funktioniert mit der Ausnahme, dass die Schaltfläche zweimal angeklickt werden muss. Nicht doppelt geklickt, aber einmal geklickt, dann erneut geklickt.
Bei der Einstellung von Breakpoints habe ich festgestellt, dass der Code hinter dem an die Schaltfläche angefügten Button beim ersten Klick tatsächlich ausgeführt wird, aber die Panels nicht wie erwartet wechseln. Wenn ich auf die gleiche Schaltfläche ODER noch schlimmer, eine andere Schaltfläche klicke, tritt das erwartete Verhalten der zweiten Anzeige auf. Wenn jedoch die zweite Schaltfläche angeklickt wird, gibt es einen unerwünschten Bonus, dass eine dritte Anzeige angezeigt wird, wobei die dritte Anzeige durch das Klicken auf die zweite Schaltfläche sichtbar gemacht wird.
Ich gehe davon aus, dass dieses Verhalten auf das Updatepanel und seine Ajax Natur zurückzuführen ist. Gibt es eine Möglichkeit, den zweiten Klick zu vermeiden? Missbrauche ich das Updatepanel? Ich wollte wirklich ein modales Popup (direkt aus dem AjaxToolKit) verwenden, hatte aber Probleme mit dem Zurücksetzen der Daten, also entschied ich mich für diesen Ansatz. Irgendwelche Einsichten, Hilfe, sogar Kritik wären willkommen, denn das hat mich lange genug geplagt. Danke