繁体   English   中英

从updatePanel中的linkbutton删除行后,Gridview不更新

[英]Gridview not updating after removing row from linkbutton within an updatePanel

我在gridview中有一个链接按钮,单击该按钮将更新数据库,并应将其从在gridview中可见的位置移除。 这也在updatepanel中。 单击链接按钮时,数据库已更新,但是gridview从不刷新。 gridview和linkbutton都是动态生成的。

链接按钮的创建如下:'b'包含行中数据的唯一ID。

if (e.Row.RowType == DataControlRowType.DataRow)
{     
        LinkButton lbRemove = new LinkButton();
        lbRemove.ID = "removeLink" + b;              
        lbRemove.Command += new CommandEventHandler(lbRemove_Click);
        lbRemove.Attributes.Add("onclick","return confirm('Are you sure?');");
        .......
        e.Row.Cells[6].Controls.Add((Control)lbRemove);

lbRemove_Click包含更新数据库并调用griview绑定和更新面板的方法:

protected void lbRemove_Click(object sender, CommandEventArgs e)
{                         
      removeFromUser(Convert.ToInt32(e.CommandArgument.ToString()));             
      loadGridviews(Convert.ToInt32(ViewState["currUserID"]));
      upnlUserDevices.Update();

我尝试使用与gridview中的属性完全相同的属性在gridview外部创建一个linkbutton。 单击时,它将调用相同的方法,并且刷新网格视图,而不是从gridview本身中单击时。

如果您可以帮助的话,请牢牢锁定在这一个上? 谢谢!

查看您的代码似乎还不错。 我只能想到两个建议:

  1. 确保您在方法loadGridViews()的末尾对GridView执行DataBind

    YourGridView.DataBind();

  2. 确保执行绑定后您正在更新正确的UpdatePanel:

    upnlUserDevices.Update(); // upnlUserDevices是包装GridView的UpdatePanel吗?

希望这可以帮助。

将此gridview放在更新面板中

所以我找到了如何使这项工作。

我需要设置链接按钮.CausesValidation = false

没有专家可以完全解决这个问题,但是确实可以解决我的问题!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM