在linkbutton上添加click事件

时间:2015-12-10 05:23:33

标签: c# gridview

我在gridview中以编程方式生成了linkbutton。这是

protected void GridView_RowDataBound(object sender, GridViewRowEventArgs e)
{
     LinkButton lb = new LinkButton();
     LinkButton nlb = new LinkButton();

     lb.ID = "Ok";                    
     lb.Text = e.Row.Cells[3].Text;
     lb.Click += new EventHandler(TotalMinor_Click);
     e.Row.Cells[3].Controls.Add(lb);

     nlb.ID = "TotalMinorLink";
     nlb.Text = e.Row.Cells[4].Text;
     nlb.Click += new EventHandler(this.TotalMinor_Click);
     e.Row.Cells[4].Controls.Add(nlb);
}

protected void TotalMinor_Click(object sender, EventArgs e)
{

}

我希望在点击链接时调用TotalMinor_Click函数,但它不会调用该函数。可能是什么原因?

2 个答案:

答案 0 :(得分:1)

未触发事件的情况是ViewState问题,您的控件应该存在并在ASP.NET Page LifeCycle的OnInit或OnLoad事件上注册事件。也许你应该放置一个隐藏的div并将你的控件放在这个div中。在GridView_RowDataBound事件处理程序中,只需找到这些div并切换可见性。

答案 1 :(得分:0)

LinkButton内的gridview上,它应该是这样的..

 <asp:LinkButton runat="server" ID="lnkbtnID" Text='Text' OnClick="TotalMinor_Click" />