当我从后面的代码中添加它时,LinkBut​​ton的Click事件不会调用

时间:2012-12-29 14:16:56

标签: asp.net

我使用下面的代码设置点击LinkButton,但没有调用该事件,当我点击链接按钮时,它正在隐藏

LinkButton lnk = new LinkButton();
lnk.Text = "....";
lnk.Click+=new EventHandler(lnk_Click);
pnl.Controls.Add(lnk); // pnl is Panel in GridView's cell

//event
protected void lnk_Click(object sender, EventArgs e)
{
   //...
}

2 个答案:

答案 0 :(得分:0)

您还必须将void设置为protected

protected void lnk_Click(object sender, EventArgs e) { }

在标记中,您需要在OnClick="lnk_Click"上添加LinkButton

编辑:我注意到您正在从后面的代码中创建LinkButton

要添加OnClick事件,您可以使用lnk.Attributes.Add("onclick", Page.ClientScript.GetPostBackEventReference(this, lnk.ID.ToString()));

http://msdn.microsoft.com/en-us/library/ms153112.aspx

答案 1 :(得分:0)

使用此

LinkButton lnk = new LinkButton();
lnk.Text = "....";
lnk.Click+=new EventHandler(lnk_Click);
pnl.Controls.Add(lnk); // pnl is Panel in GridView's cell


protected void lnk_Click(object sender, EventArgs e)
{
LinkButton lnk = sender as LinkButton;
// your work
}