Объявление события CLICK.ASPX против кода позади .. как эти 2 отличаются? - PullRequest
0 голосов
/ 12 октября 2010

в .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 Ответ

1 голос
/ 12 октября 2010

Вы создаете новую кнопку ссылки и назначаете обработчик событий каждый раз при загрузке страницы (в том числе при обратной передаче). .Net не поймет, что LinkButton, который вы создаете при обратной передаче, на самом деле является LinkButton, который вы создали при первом вызове страницы. Ваш первый пример кода был в порядке.

...