asp.net - 如何让 ASP.NET DataPager 控件在 UpdatePanel 中工作?

标签 asp.net updatepanel

我有一个顶部带有参数的搜索页面,底部有一个带有结果的搜索按钮。整个内容都包含在母版页内的更新面板中。单击搜索按钮后,它会显示第一页。但是,如果您单击 DataPager 上的下一步按钮,它不会显示第二页。它显示第二页没有结果。任何帮助将不胜感激。

最佳答案

我认为 Nick 的想法是正确的。听起来您正在执行搜索并在搜索按钮的 OnClick 方法中填充 ListView。您需要执行搜索(或者最好是第一次缓存数据)并将其绑定(bind)到使用 DataPager 请求的每个新页面的 ListView。

您可以通过为 ListView 的 OnPagePropertiesChanged 事件创建一个方法来相当轻松地完成此操作。执行搜索(或从缓存中提取)并在该 OnPagePropertiesChanged 事件中绑定(bind) ListView,您的数据应该会填充。您的 C# 代码可能如下所示:

protected void SearchButton_OnClick(object sender, EventArgs e)
{
    PerformSearch();
}

protected void PerformSearch()
{
    // ...Get your data.... //

    ListView1.DataSource = data;
    ListView1.DataBind();
}

protected void ListView1_OnPagePropertiesChanged(object sender, EventArgs e)
{
    PerformSearch();
}

关于asp.net - 如何让 ASP.NET DataPager 控件在 UpdatePanel 中工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/424705/

相关文章:

asp.net - 当包含 AjaxControlToolkit lib 时,UpdatePanel 不起作用

html - Chrome float 左问题

c# - 将 asp.net 表单 View 从另一个页面更改为插入模式

c# - 如何连接两个连接字符串并将数据从一个数据库插入另一个MySQL数据库

asp.net - 需要从 ASP.net 在服务器中执行 *.exe

asp.net - 当更新面板位于主页中时保持滚动位置

javascript - 使用 javascript 在 ASP.NET 中的列表框之间移动项目,然后在服务器端访问结果的最佳方法

c# - updatepanel 中的 asp.net 链接按钮不触发

c# - 如何在不刷新所有页面的情况下在 asp.net 中使用 updatePanel?

javascript - CheckBoxList - onclick() JS 函数如何检测 CheckBox 外部的点击(HTML 输入)