加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net – 删除事件后GridView没有刷新

发布时间:2020-12-16 09:48:27 所属栏目:asp.Net 来源:网络整理
导读:我对asp.net GridView有一个奇怪的问题.我有一个绑定到 LinqDataSource的GridView.在GridView的行删除事件中,我将从数据库中删除该行,但不刷新网格(即使在绑定到数据源之后). 当我放置一个断点时,我可以看到在LinqDS_Selecting事件之后触发了OnRowDeleting事
我对asp.net GridView有一个奇怪的问题.我有一个绑定到 LinqDataSource的GridView.在GridView的行删除事件中,我将从数据库中删除该行,但不刷新网格(即使在绑定到数据源之后).

当我放置一个断点时,我可以看到在LinqDS_Selecting事件之后触发了OnRowDeleting事件.但删除事件后它不再被解雇!这可能是原因吗?我究竟做错了什么?

请有人帮忙.提前谢谢了.

.aspx文件:

<asp:LinqDataSource
    ID="LinqDS"
    runat="server"
    OnSelecting="LinqDS_Selecting">
</asp:LinqDataSource>

<asp:GridView
    DataSourceID = "LinqDS"
    ID = "gv1"
    runat = "server"  
    DataKeyNames = "InstructionId"
    EnableViewState = "false"
    OnRowDataBound = "gv1_RowDataBound" 
    OnRowDeleting = "gv1_RowDeleting" 
    OnRowCommand = "gv1_RowCommand"
    PageSize = "30" >
    <Columns>
        <!-- My colums --->
    </Columns>
</asp:GridView>

.aspx.cs

protected void Page_Load(object sender,EventArgs e)
{

}

protected void LinqDS_Selecting(object sender,LinqDataSourceSelectEventArgs e)
{
    // my linq to sql query
    var query = from  .... .... ;
    e.Result = query;
}

protected void gv1_RowDeleting(object sender,GridViewDeleteEventArgs e)
{
    int instructionId = (int)gv1.DataKeys[e.RowIndex].Value;
    /// my delete logic
    CTX.SubmitChanges();
    gv1.DataBind();
}

解决方法

如果您的记录实际上已被正确删除,并且网格只是没有显示更改,我会尝试将GridView放在UpdatePanel中,看看是否有帮助.

<asp:UpdatePanel runat="server" UpdateMode="Always">
    <ContentTemplate>
        // GridView
    </ContentTemplate>
</asp:UpdatePanel>

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读