声明CLICK事件。 ASPX vs Code背后......这两个有什么不同?

时间:2010-10-11 22:05:25

标签: asp.net events click

<。>在.ASPX中这是有用的

<asp:ImageButton ID="lbHope6" runat="server" ImageUrl="~/Shared/Images/Site/ChartTypeProd.png"
CssClass="chart" OnClick="lbHope6_Click" />

 protected void lbHope6_Click(object sender, ImageClickEventArgs e)
    {
        EventArgs args = new EventArgs();

        if (Hope6 != null)
            Hope6(this, args);
    }

但是当我以这种方式这样做时,它的行为有所不同......任何想法?我放弃了希望

 LinkButton lb = new LinkButton();
                lb.Text = s.Key.ToString();
                lb.Click += new EventHandler(lbHope6_Click);
                sourceNameCell.Controls.Add(lb);

   protected void lbHope6_Click(object sender, EventArgs e)
    {
        EventArgs args = new EventArgs();

        if (Hope6 != null)
            Hope6(this, args);
    }

1 个答案:

答案 0 :(得分:1)

您正在创建新的链接按钮,并在每次加载页面时分配一个事件处理程序(包括回发)。 .Net不会理解您在回发时创建的LinkBut​​ton实际上是您在首次调用页面时创建的LinkBut​​ton。你的第一个代码样本很好。