ASP.NET用户控件一般适用于产生相对静态的内容,所以没有builtin的事件支持。本文讨论用户控件返回事件的方法。 此处我要做一个搜索表单填写的控件,即让用户填入一系列搜索条件来搜索符合条件的用户。假定搜索用户控件(Search.ascx)中包含按钮控件AButton,以及让用户填入索条件的一些其它控件如textbox,dropdownlist等。希望实现按AButton按钮时,包含该用户控件的页面可以接收到事件,根据条件取得用户列表绑定到页面的gridview控件 Search.ascx.cs中的处理: 1. 定义public的事件委托,如ClickEventHandler; 2. 在UserControl类中声明事件,如Click; 3. 在UserControl类中定义引发事件的方法,如OnClick()方法; 4. 在UserControl类的相关方法中调用引发事件的方法,如在Button_Click()中调用OnClick()。 代码: 用户控件中 public delegate void ClickEventHandler(object sender, EventArgs e); public partial class Controls_SearchUser : System.Web.UI.UserControl { public event ClickEventHandler SearchButtonClick; /// <summary> /// 关键字类别 /// </summary> public string KeyType { [...]