Gli ultimi tutorial di sviluppo web
 

ASP.NET Web Forms - Eventi


Un gestore di eventi è una subroutine che esegue il codice per un dato evento.


ASP.NET - gestori di eventi

Guardate il seguente codice:

<%
lbl1.Text="The date and time is " & now()
%>

<html>
<body>
<form runat="server">
<h3><asp:label id="lbl1" runat="server" /></h3>
</form>
</body>
</html>

Quando finirà il codice di cui sopra essere eseguito? La risposta è: "You don't know..."


L'evento Page_Load

L'evento Page_Load è uno dei tanti eventi che ASP.NET capisce. L'evento Page_Load viene attivato quando la pagina viene caricata, e ASP.NET chiamerà automaticamente il Page_Load subroutine, ed eseguire il codice al suo interno:

Esempio

<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>
Visualizza l'esempio »

Note: L'evento Page_Load non contiene riferimenti a oggetti o argomenti dell'evento!


Il Page.IsPostBack Proprietà

La subroutine Page_Load viene eseguito ogni volta che la pagina viene caricata. Se si desidera eseguire il codice nella subroutine Page_Load solo la prima volta che la pagina viene caricata, è possibile utilizzare la proprietà Page.IsPostBack. Se la proprietà Page.IsPostBack è falsa, la pagina viene caricata per la prima volta, se è vero, la pagina viene inviato al server (vale a dire da un pulsante click su una forma):

Esempio

<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>
Visualizza l'esempio »

L'esempio precedente scrivere la "The date and time is...." messaggio solo la prima volta che la pagina viene caricata. Quando un utente fa clic sul pulsante Invia, la subroutine presentare scriverà "Hello World!" alla seconda etichetta, ma la data e l'ora nella prima etichetta non cambieranno.