UpdatePanel中的DataGrid在单击列标题时进行完全刷新

本文关键字:刷新 标题 DataGrid 中的 单击 UpdatePanel | 更新日期: 2023-09-27 17:48:58

我在一个无条件的UpdatePanel: <asp:UpdatePanel ID="upData" runat="server">的asp.net webforms页面上有一个DataGrid。

DataBinding发生在protected override void OnLoadComplete(EventArgs e)内部,因为我在执行绑定之前处理任何用户事件。单击标题可以正常工作(即,触发排序),但会导致整个页面刷新,而不是仅刷新UpdatePanel

我确实找到了一种方法来解决这个问题,但它非常可怕(dgGridDataGrid):

foreach (Control c in dgGrid.Controls[0].Controls[1].Controls)
{
    ScriptManager.GetCurrent(this).RegisterAsyncPostBackControl(c.Controls[0]);
}

谁能建议一个更干净的方法来解决这个问题?

UpdatePanel中的DataGrid在单击列标题时进行完全刷新

添加以下内容作为UpdatePanel的触发器

            <Triggers>
                <asp:AsyncPostBackTrigger ControlID="dgGrid" />
            </Triggers>