大致代码如下,为了简洁,我删除了多余的代码,参数一律简略.
当前是在一个类中,继承了WebControl.为了做一个控件.
想要的效果是,第一次在OnLoad中创建控件,是一堆.net控件,然后每个.net控件都有事件处理函数,然后触发事件后,在处理函数中创建新的控件.当前的问题是,在OnLoad中调用了this.Create(),然后创建LinkButton,绑定事件没有问题.
但是在lb_Command中去调用this.Create(),给LinkButton绑定事件就是绑不上.我怀疑是不是生命周期的问题,lb_Command执行的时候,已经不可以绑定事件了~
protected override void OnLoad(EventArgs e)
{
    //post back不执行
    this.Create();
    base.OnLoad(e);
}private void Create()
{
    this.CreateCell("1","1", null);
}private void CreateCell(string commandArgument, string text, HtmlTableRow row)
{
    LinkButton lnkBN = new LinkButton();
    lnkBN.Text = text;
    lnkBN.CommandArgument = commandArgument;
    lnkBN.Command += new CommandEventHandler(lb_Command);
    this.Controls.Add(lnkBN);
}void lb_Command(object sender, CommandEventArgs e)
{
    //do some thing
    this.Create();
}