Я использую gridview и привязан к datatable, поэтому для autogeneratecolumns установлено значение true. Затем я добавил динамическую ссылку в последнюю ячейку строки, и я вижу ссылку, которая появляется в gridview. Теперь я не могу связать какое-либо событие с кнопкой. Я хотел бы узнать, срабатывают ли события при использовании динамически добавленной кнопки ссылки в gridview с автогенераторами, установленными в true. Вот что я имею в своем кодеСоздание динамически созданного linkbutton для запуска события при нажатии
protected void btnSearch_Click(object sender, EventArgs e)
{
Datatable retval = // api call to a method. returns valida datatable
if (retval != null)
{
if (retval.Rows.Count > 0)
{
GridViewSearchResult.Visible = true;
GridViewSearchResult.DataSource = retval;
GridViewSearchResult.DataBind();
}
}
}
protected void GridViewSearchResult_RowDataBound(object sender, GridViewRowEventArgs e)
{
LinkButton lb;
int j = e.Row.Cells.Count;
string HeaderText;
if (e.Row.RowType == DataControlRowType.DataRow)
{
lb = new LinkButton();
lb.Text = "edit";
//lb.CommandArgument = "edit";
//lb.CommandName = "edit";
//lb.Command += LinkButton_Command;
//lb.Click += new EventHandler(onLinkClick);
//ScriptManager.GetCurrent(this.Page).RegisterPostBackControl(lb);
//e.Row.Cells[j-1].Controls.Add(l);
e.Row.Cells[j-1].Controls.Add(lb);
lb.Click += new EventHandler(lbtn_Click);
}
}
protected void GridViewSearchResult_RowCommand(object sender, CommandEventArgs e)
{
switch (e.CommandName.ToLower())
{
case "edit":
Server.Execute("VerifyContact.aspx");
break;
default:
break;
}
}
protected void lbtn_Click(object sender, EventArgs e)
{
//if (e. == "delete")
{
Server.Execute("VerifyContact.aspx");
}
}
protected void LinkButton_Command(object sender, CommandEventArgs e)
{
if (e.CommandName == "edit")
{
LinkButton lb = (LinkButton)sender;
lb.Text = "OK";
}
}
и ASP
<div id="searchResultGrid">
<asp:GridView ID="GridViewSearchResult" runat="server"
OnRowDataBound="GridViewSearchResult_RowDataBound"
onselectedindexchanged="GridViewSearchResult_SelectedIndexChanged"
onRowEditing = "GridViewSearchResult_RowEditing"
onRowCommand = "GridViewSearchResult_RowCommand">
</asp:GridView>
</div>
напишите свой код здесь –