最大的網站源碼資源下載站,
在《在用戶控件中添加屬性》這一篇文章中我們演示了如何在用戶控件中添加屬性,接下來我們演示如何在用戶控件中添加事件。
在《在用戶控件中添加屬性》這一篇文章中我們定義了一個用戶登錄的用戶控件userlogin.ascx 文件,里面包含了一個linkbutton服務器按鈕控件,當用戶單擊該按鈕時服務器端會自動生成一個回發來激發page.load事件。除了服務器自動產生回發來激發page.load事件外,我們可以給linkbutton添加一個它自己的事件,添加事件其實也很簡單,通過在<script></script>塊中聲明事件,然后把該事件添加到用戶控件中。
我們現在通過以下的例子來說明如何在userlogin.ascx用戶控件中添加事件。
userlogin.ascx
<html>
<title>用戶登錄</title>
<body>
<table>
<tr>
<td>用戶名:</td>
<td><asp:textbox id=”txt1” runat=”server”></td>
</tr>
<tr>
<td>密 碼:</td>
<td><asp:textbox id=”txt2” textmode=”password” runat=”server”></td>
</tr>
<hr>
<tr>
<td></td>
<td><asp:linkbutton text=”登陸” onclick=”myonclick” runat=”server”></td>
</tr>
</table>
</body>
</html>
<script language=”c#” runat=”server”>
public string username{
get{return txt1.text;}
set{txt1.text=value;}
}
public string password{
get{return txt2.text;}
set{txt2.text=value;}
}
public event eventhandler login; //添加事件句柄
void myonclick(object sender,eventargs e){
if(login != null)
login(this,new eventargs()); //激活login事件
}
</script>
在aspx頁面中使用自定義事件:
<%@register tagprefix=”wen” tagname=”userevent” src=” userlogin.ascx”%>
<html>
<body>
<form runat=server>
<wen:userevent id=”mylogin” onlogin=”onloginpress” runat=”server”>
</form>
<asp:label id=”lab1” runat=”server”/><br>
<asp:label id=”lab2” runat=”server”/><br>
</body>
</html>
<script language=”c#” runat=”server”>
void onloginpress(object render, eventargs e){
lab1.text=mylogin.username;
lab2.text=mylogin.password;
}
</script>
說明:這里的onlogin事件是我們給用戶控件userlogin.ascx文件添加的事件。
新聞熱點
疑難解答
圖片精選