从updatePanel中的链接按钮中删除行后,Gridview没有更新
本文关键字:Gridview 更新 删除行 updatePanel 链接 按钮 | 更新日期: 2023-09-27 18:16:49
我有一个链接按钮在gridview,当点击将更新数据库,并应从gridview中可见删除它。这也是在一个更新面板。当单击链接按钮时,数据库被更新,但是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包含更新DB和调用griview来绑定和更新面板的方法:
protected void lbRemove_Click(object sender, CommandEventArgs e)
{
removeFromUser(Convert.ToInt32(e.CommandArgument.ToString()));
loadGridviews(Convert.ToInt32(ViewState["currUserID"]));
upnlUserDevices.Update();
我已经尝试在gridview之外使用与gridview中完全相同的属性创建一个链接按钮。当点击它调用相同的方法,它刷新gridview,只是不是当被点击从gridview本身。
如果你能帮忙的话,我在这个问题上有点卡住了。谢谢!看看你的代码,它似乎是好的。我只能想到两个建议:
-
确保在loadGridViews()方法结束时对GridView进行数据绑定
YourGridView.DataBind ();
-
确保你在绑定后更新了正确的UpdatePanel:
upnlUserDevices.Update ();//upnlUserDevices是包裹GridView的UpdatePanel吗?
所以我找到了如何使它工作。
我需要设置linkbutton .CausesValidation = false
没有专家知道这到底是做什么的,但它确实解决了我的问题!
将此gridview
放入更新面板