ASP.NET - wydarzenia
- Poprzednia strona Kontrolki WebForms
- Następna strona Formularz WebForms
Obsługa wydarzeń (event handler) to procedura służąca do wykonywania kodu dla danego wydarzenia.
ASP.NET - obsługa wydarzeń
Zobacz poniższy kod:
<% lbl1.Text="The date and time is " & now() %> <html> <body> <form runat="server"> <h3><asp:label id="lbl1" runat="server" /></h3> </form> </body> </html>
Kiedy ten kod zostanie wykonany? Odpowiedź brzmi: "Nie wiem..."
Wydarzenie Page_Load
Wydarzenie Page_Load jest jednym z wielu wydarzeń rozumianych przez ASP.NET. Wydarzenie Page_Load jest wywoływane podczas ładowania strony, a następnie ASP.NET automatycznie wywołuje procedurę Page_Load i wykonuje kod w niej zawarty:
<script runat="server"> Sub Page_Load lbl1.Text="The date and time is " & now() End Sub </script> <html> <body> <form runat="server"> <h3><asp:label id="lbl1" runat="server" /></h3> </form> </body> </html>
Komentarz:Wydarzenie Page_Load nie zawiera odniesień do obiektów ani parametrów zdarzenia!
Właściwość Page.IsPostBack
Podprocedura Page_Load będzie uruchamiana przy każdym ładowaniu strony. Jeśli chcesz wykonać kod w podprocedurze Page_Load tylko podczas pierwszego ładowania strony, możesz użyć właściwości Page.IsPostBack. Jeśli właściwość Page.IsPostBack wynosi false, strona jest ładowana po raz pierwszy, jeśli wynosi true, strona jest wysyłana z powrotem do serwera (np. poprzez kliknięcie przycisku na formularzu):
<script runat="server"> Sub Page_Load if Not Page.IsPostBack then lbl1.Text="The date and time is " & now() end if End Sub Sub Submit(s As Object, e As EventArgs) lbl2.Text="Hello World!" 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>
Powyższy przykład tworzy wiadomość "The date and time is...." podczas pierwszego ładowania strony. Kiedy użytkownik kliknie przycisk Submit, podprocedura submit tworzy "Hello World!" w drugim label, ale data i czas w pierwszym label nie zmieniają się.
- Poprzednia strona Kontrolki WebForms
- Następna strona Formularz WebForms