ASP.NET-Webformulare – Ereignisse
Ein Event-Handler ist eine Unterroutine, die Code für ein bestimmtes Ereignis ausführt.
Wenn ein zugehöriges Ereignis in ASP.NET ausgelöst wird, wird die Unterroutine des Ereignisses aufgerufen. Weitere Informationen finden Sie weiter unten.
Bitte schauen Sie sich den folgenden Code an:
<%lbl1.Text="Das Datum und die Uhrzeit sind " & now()%><html><body><form runat="server"><h3><asp:label id="lbl1" runat="server" /></h3></form></body></html>
Wann wird der obige Code ausgeführt? Die Antwort lautet: „Ich weiß es nicht…“.
Das Page_Load-Ereignis ist eines von vielen Ereignissen, die ASP.NET versteht. Das Page_Load-Ereignis wird ausgelöst, wenn die Seite geladen wird. ASP.NET ruft automatisch die Page_Load-Subroutine auf und führt den darin enthaltenen Code aus:
<script runat="server">Sub Page_Loadlbl1.Text="Das Datum und die Uhrzeit sind " & now()End Sub</script><html><body><form runat="server"><h3><asp: label id="lbl1" runat="server" /></h3></form></body></html>
Hinweis: Das Page_Load-Ereignis enthält keine Objektreferenzen oder Ereignisparameter!
Die Unterroutine „Page_Load“ wird jedes Mal ausgeführt, wenn die Seite geladen wird. Wenn Sie möchten, dass der Code in der Unterroutine „Page_Load“ nur ausgeführt wird, wenn die Seite zum ersten Mal geladen wird, können Sie die Eigenschaft „Page.IsPostBack“ verwenden. Wenn die Eigenschaft Page.IsPostBack auf „false“ gesetzt ist, wird die Seite zum ersten Mal geladen, wenn sie auf „true“ gesetzt ist, wird die Seite an den Server zurückgesendet (z. B. durch Klicken auf eine Schaltfläche im Formular):
<script runat="server">Sub Page_Loadif Not Page.IsPostBack thenlbl1.Text="Das Datum und die Uhrzeit sind " & now()end ifEnd SubSub subscribe(s As Object, e As EventArgs)lbl2.Text="Hallo Welt! "End Sub</script><html><body><form runat="server"><h3><asp:label id="lbl1" runat="server" /></h3><h3><asp:label id="lbl2" runat="server" /></h3><asp:button text="Submit" onclick="submit" runat="server" /> </form></body></html>
Im obigen Beispiel wird die Meldung „Datum und Uhrzeit sind...“ nur beim ersten Laden der Seite angezeigt. Wenn der Benutzer auf die Schaltfläche „Senden“ klickt, schreibt die Subroutine „Hallo Welt!“ in das zweite Etikett, aber Datum und Uhrzeit im ersten Etikett ändern sich nicht.
Das Obige ist eine Erläuterung der Verwendung von ASP.NET-Ereignishandlern.