معالج حدث هو روتين الذي ينفذ رمز لحدث معين.
ASP.NET - معالجات الأحداث
نظرة على التعليمات البرمجية التالية:
<%
lbl1.Text="The date and time is " & now()
%>
<html>
<body>
<form runat="server">
<h3><asp:label id="lbl1" runat="server" /></h3>
</form>
</body>
</html>
متى رمز أعلاه يتم تنفيذها؟ الجواب هو: "You don't know..."
الحدث Page_Load
الحدث Page_Load هو واحد من العديد من الأحداث التي يفهم ASP.NET. يتم تشغيل الحدث Page_Load عند تحميل الصفحة، وسوف ASP.NET استدعاء تلقائيا Page_Load روتين، وتنفيذ التعليمات البرمجية داخله:
مثال
<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>
شاهد المثال » Note: يحتوي الحدث Page_Load أي مراجع الكائنات أو الحجج الحدث!
وPage.IsPostBack الملكية
روتين Page_Load يعمل في كل مرة يتم تحميل الصفحة. إذا كنت ترغب في تنفيذ التعليمات البرمجية في روتين Page_Load فقط في المرة الأولى يتم تحميل الصفحة، يمكنك استخدام الخاصية Page.IsPostBack. إذا كانت الخاصية Page.IsPostBack غير صحيحة، يتم تحميل الصفحة للمرة الأولى، وإذا كان صحيحا، الصفحة يتم نشر مرة أخرى إلى الخادم (أي من نقرة زر على النموذج):
مثال
<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>
شاهد المثال » في المثال أعلاه سوف يكتب "The date and time is...." رسالة فقط في المرة الأولى يتم تحميل الصفحة. عندما ينقر المستخدم على زر إرسال، وتقديم وروتين إرسال "Hello World!" إلى التسمية الثانية، إلا أن التاريخ والوقت في التسمية الأولى لن تتغير.