ASP.NET
घटना से निपटना
खोज…
वाक्य - विन्यास
- निजी शून्य EventName (ऑब्जेक्ट प्रेषक, EventArgs ई);
पैरामीटर
पैरामीटर | विवरण |
---|---|
वस्तु भेजने वाला | प्रेषक उस वस्तु को संदर्भित करता है जिसने ईवेंट हैंडलर को निकाल देने वाली ईवेंट को लागू किया था। यह उपयोगी है यदि आपके पास एक ही घटना हैंडलर का उपयोग करके कई ऑब्जेक्ट हैं। |
EventArgs ई | EventArgs एक डमी बेस क्लास का कुछ है। में और अधिक या कम बेकार है, लेकिन यदि आप इसे प्राप्त करते हैं, तो आप अपने डेटा हैंडलर्स को पास करने के लिए जो भी डेटा की आवश्यकता होती है उसे जोड़ सकते हैं। |
आवेदन और सत्र की घटनाओं
सबसे महत्वपूर्ण अनुप्रयोग घटनाएं हैं:
Application_Start - यह तब उठाया जाता है जब एप्लिकेशन / वेबसाइट शुरू होती है।
Application_End - यह तब उठाया जाता है जब एप्लिकेशन / वेबसाइट बंद हो जाती है।
इसी तरह, सबसे अधिक उपयोग किए जाने वाले सत्र निम्न हैं:
Session_Start - यह तब उठाया जाता है जब कोई उपयोगकर्ता पहली बार एप्लिकेशन से पेज मांगता है ।
सत्र_और - सत्र के समाप्त होने पर इसे उठाया जाता है।
पेज और कंट्रोल इवेंट
सामान्य पृष्ठ और नियंत्रण कार्यक्रम हैं:
डेटाबाइंडिंग - यह तब उठाया जाता है जब कोई नियंत्रण किसी डेटा स्रोत से जुड़ता है।
विवादित - यह तब उठाया जाता है जब पृष्ठ या नियंत्रण जारी किया जाता है।
त्रुटि - यह एक पेज ईवेंट है, तब होता है जब कोई अपवाद छोड़ दिया जाता है।
Init - यह तब उठाया जाता है जब पेज या कंट्रोल इनिशियलाइज़ हो जाता है।
लोड - यह तब उठाया जाता है जब पृष्ठ या एक नियंत्रण लोड होता है।
PreRender - यह तब उठाया जाता है जब पेज या कंट्रोल को रेंडर करना होता है।
अनलोड - यह तब उठाया जाता है जब पृष्ठ या नियंत्रण मेमोरी से अनलोड किया जाता है।
डिफ़ॉल्ट ईवेंट
पृष्ठ ऑब्जेक्ट के लिए डिफ़ॉल्ट ईवेंट लोड ईवेंट है। इसी तरह, प्रत्येक नियंत्रण में एक डिफ़ॉल्ट घटना होती है। उदाहरण के लिए, बटन नियंत्रण के लिए डिफ़ॉल्ट ईवेंट क्लिक इवेंट है।
डिफ़ॉल्ट इवेंट हैंडलर विजुअल स्टूडियो में बनाया जा सकता है, बस डिज़ाइन दृश्य में नियंत्रण को डबल क्लिक करके। निम्न तालिका सामान्य नियंत्रणों के लिए कुछ डिफ़ॉल्ट घटनाओं को दिखाती है:
नियंत्रण | डिफ़ॉल्ट घटना |
---|---|
AdRotator | AdCreated |
बुलेटेड सूची | क्लिक करें |
बटन | क्लिक करें |
केलिन्डर | SelectionChanged |
चेक बॉक्स | CheckedChanged |
CheckBoxList | SelectedIndexChanged |
डेटा ग्रिड | SelectedIndexChanged |
DataList | SelectedIndexChanged |
ड्राॅप डाउन लिस्ट | SelectedIndexChanged |
हाइपरलिंक | क्लिक करें |
ImageButton | क्लिक करें |
ImageMap | क्लिक करें |
LinkButton | क्लिक करें |
सूची बाक्स | SelectedIndexChanged |
मेनू MenuItem | क्लिक करें |
रेडियो बटन | CheckedChanged |
RadioButtonList | SelectedIndexChanged |
उदाहरण इस उदाहरण में लेबल नियंत्रण और उस पर बटन नियंत्रण के साथ एक सरल पृष्ठ शामिल है। जैसे पृष्ठ की घटनाएँ जैसे कि Page_Load, Page_Init, Page_PreRender आदि जगह लेते हैं, यह एक संदेश भेजता है, जिसे लेबल नियंत्रण द्वारा प्रदर्शित किया जाता है। जब बटन पर क्लिक किया जाता है, तो Button_Click ईवेंट उठाया जाता है और वह लेबल पर प्रदर्शित होने वाला संदेश भी भेजता है।
एक नई वेबसाइट बनाएं और नियंत्रण उपकरण बॉक्स से एक लेबल नियंत्रण और उस पर एक बटन नियंत्रण खींचें। गुण विंडो का उपयोग करते हुए, .lblmessage के रूप में नियंत्रण की आईडी सेट करें। और .btnclick क्रमशः। बटन नियंत्रण के पाठ गुण को 'क्लिक' के रूप में सेट करें।
मार्कअप फ़ाइल (.aspx):
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs"
Inherits="eventdemo._Default" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>Untitled Page</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:Label ID="lblmessage" runat="server" >
</asp:Label>
<br />
<br />
<br />
<asp:Button ID="btnclick" runat="server" Text="Click" onclick="btnclick_Click" />
</div>
</form>
</body>
</html>
फ़ाइल के पीछे कोड पर जाने के लिए डिज़ाइन दृश्य पर डबल क्लिक करें। Page_Load ईवेंट स्वचालित रूप से इसमें किसी भी कोड के बिना बनाया गया है। निम्नलिखित स्व-व्याख्यात्मक कोड लाइनें लिखें:
using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
namespace eventdemo {
public partial class _Default : System.Web.UI.Page {
protected void Page_Load(object sender, EventArgs e) {
lblmessage.Text += "Page load event handled. <br />";
if (Page.IsPostBack) {
lblmessage.Text += "Page post back event handled.<br/>";
}
}
protected void Page_Init(object sender, EventArgs e) {
lblmessage.Text += "Page initialization event handled.<br/>";
}
protected void Page_PreRender(object sender, EventArgs e) {
lblmessage.Text += "Page prerender event handled. <br/>";
}
protected void btnclick_Click(object sender, EventArgs e) {
lblmessage.Text += "Button click event handled. <br/>";
}
}
}
पृष्ठ निष्पादित करें। लेबल पेज लोड, पेज इनिशियलाइज़ेशन और, पेज प्री-रेंडर इवेंट दिखाता है। प्रभाव देखने के लिए बटन पर क्लिक करें: