送分快来抢:我自己编写了一个web自定义控件,如何为他添加类似button的onclick事件 ?
最好有例子

解决方案 »

  1.   

    定义委托:
    public delegate void WebServiceCallBackHandle(object sender,WebServiceEventArgs e);定义事件:
    public event WebServiceCallBackHandle WebServiceCallBack;在需要的地方引发事件:
    if(this.WebServiceCallBack != null)
    {
    this.WebServiceCallBack(this,
    new WebServiceEventArgs(asyncResult,this.EndInvokeWebMethod()));
    }
      

  2.   

    namespace bsTest2005_8_16.Samples
    {
    using System;
    using System.Web;
    using System.Web.UI.WebControls; /// <summary>
    /// WebUserControl1 的摘要说明。
    /// </summary>
    public class WebUserControl1 : System.Web.UI.UserControl
    {
            protected System.Web.UI.WebControls.TextBox TextBox1;
            protected System.Web.UI.WebControls.Button Button1; private void Page_Load(object sender, System.EventArgs e)
    {
    // 在此处放置用户代码以初始化页面
    }
     
            public delegate void ButtonClickEventHandler(object sender,System.EventArgs e);
            public event ButtonClickEventHandler onclick;        private void Button1_Click(object sender, System.EventArgs e)
            {
                this.TextBox1.Text = DateTime.Now.ToString();
                if (onclick != null)
                {
                    onclick(sender,e);
                }
                
            }
    #region Web 窗体设计器生成的代码
    override protected void OnInit(EventArgs e)
    {
    //
    // CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
    //
    InitializeComponent();
    base.OnInit(e);
    }

    /// <summary>
    /// 设计器支持所需的方法 - 不要使用代码编辑器
    /// 修改此方法的内容。
    /// </summary>
    private void InitializeComponent()
    {
                this.Button1.Click += new System.EventHandler(this.Button1_Click);
                this.Load += new System.EventHandler(this.Page_Load);        }
    #endregion       
    }
    }
      

  3.   

    lz的可用分蛮多的嘛~ 这个星期已经至少见到4、5个lz以“送分快来抢:.....”为标题的提问了~~
      

  4.   

    是服务器控件的事件,不是usercontrol
      

  5.   

    在控件里自己写事件,
    public event EventHandler btnLogin
    {
    add
    {
    Events.AddHandler( _loginEvent,value );
    }
    remove
    {
    Events.RemoveHandler( _loginEvent,value );
    }
    }
    这样你的控件里就有了btnLogin这个方法可以自己写想要实现的代码元