[英]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本身中单击时。
如果您可以帮助的话,请牢牢锁定在这一个上? 谢谢!
查看您的代码似乎还不错。 我只能想到两个建议:
确保您在方法loadGridViews()的末尾对GridView执行DataBind
YourGridView.DataBind();
确保执行绑定后您正在更新正确的UpdatePanel:
upnlUserDevices.Update(); // upnlUserDevices是包装GridView的UpdatePanel吗?
希望这可以帮助。
将此gridview
放在更新面板中
所以我找到了如何使这项工作。
我需要设置链接按钮.CausesValidation = false
没有专家可以完全解决这个问题,但是确实可以解决我的问题!
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.