日期:2014-05-17 浏览次数:20822 次
假定用户控件(UserControl.ascx)中包含按钮控件? AButton,希望实现按? Button? 按钮时,包含该用户控件的页面可以接收到事件。
UserControl.ascx.cs? 中的处理:
1. 定义? public? 的事件委托,如? ClickEventHandler;
2. 在? UserControl? 类中声明事件,如? Click;
3. 在? UserControl? 类中定义引发事件的方法,如? OnClick()方法;
4. 在? UserControl? 类的相关方法中调用引发事件的方法,如在? Button_Click()中调用? OnClick()。
?下面这个例子是简单的响应点击事件
demo:buttonlist.aspx.cs
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
namespace stoneControls
{
??? public delegate void ClickEventHandler(object sender, EventArgs e);
??? public partial class buttonList : System.Web.UI.UserControl
??? {
??????? public event ClickEventHandler Click;
??????? protected void OnClick(EventArgs e)
??????? {
??????????? if (Click != null)
??????????????? Click(this, e);
??????? }
??????? protected void lbnHome_OnClick(object sender, EventArgs e)
??????? {
??????????? this.OnClick(e);
??????? }
??? }
}
demo:buttonlist.aspx
<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="b