Die Schaltfläche click-Ereignis-handler, bevor die Seite laden
Beschreibe ich mein problem in einfacher Weise, so ist es nicht genau das, was ich bin versucht zu tun, aber die Idee ist die gleiche.Hier ist das problem:
Ich erstellen dynamischer Schaltflächen aus dem code hinter.Ich eine id aus dem query-string,create-button mit id ,dynamische Ereignishandler hinzufügen zu click-Ereignis,und die Schaltfläche hinzufügen, um Platzhalter.Ich Speichere die Liste der id-s in der session und in der Seite geladen Methode neu diese Schaltflächen und fügen Sie Platzhalter.Einer der id-s ist CurrentId und es auch gespeichert in der session.Buttons click-handler so etwas tun
Button b=(Button)sender;
Session["CurrentId"]=Convert.ToInt32(b.ID);
In die Seite laden, wenn ich buttons erstellen ich möchte die Schaltfläche festlegen der text-Eigenschaft von anderen unterscheidet, wenn id==Convert.ToInt32(Session["CurrentId"])
bei der Liste der id-s gekommen sind, von der Sitzung.Aber das problem ist, dass click-Ereignis-handler wird aufgerufen, nachdem die Seite geladen,und wenn ich buttons erstellen in die Seite laden ,CurrentId in der Sitzung wurde noch nicht channged durch click-Ereignishandler.Können Sie vorschlagen, eine Lösung für diese situation?
InformationsquelleAutor unknown | 2011-01-12
Du musst angemeldet sein, um einen Kommentar abzugeben.
Es sieht aus wie Sie versuchen, aktualisieren Sie die Schaltflächen, die Sie haben, die dynamisch erstellt werden, nachdem das click-Ereignis ausgelöst hat. Warum nicht einfach ändern Sie die Schaltfläche text in der click-Ereignis-wie Sie Sie beschrieben haben?
d.h.
Auch, Sie können immer aktualisieren Sie die Tasten auf dem PreRender-event der Auftritt, nachdem die Steuerung auf Ereignisse klicken, aber bevor die Steuerelemente bedient werden zurück an den client.
Stellen Sie sicher, dass Sie lernen, die ASP .Net page lifecycle richtig, es ist von unschätzbarem Wert wissen für diese Art von Problemen. Verwenden Sie die "SILBER" accronym zu einfach erinnere mich an die Stufen. Sie können darüber Lesen Sie hier: codeproject.com/KB/aspnet/ASPNET_Page_Lifecycle.aspx
InformationsquelleAutor Brian Scott