gpt4 book ai didi

c# - 使用 Datapager 在 asp.net 中分页 - 下一个、上一个按钮

转载 作者:行者123 更新时间:2023-11-28 08:40:35 25 4
gpt4 key购买 nike

<div>
<asp:ListView ID="listTexts" runat="server" OnDataBound="listTexts_DataBound">
<ItemTemplate>
<div>
<span id="CommentedText">
<%# DataBinder.Eval(Container.DataItem, "Comment") %>
</span>
</div>
</ItemTemplate>
</asp:ListView>
<div>
<asp:DataPager ID="DataPager" runat="server" PagedControlID="listTexts" PageSize="10">
<Fields>
<asp:NextPreviousPagerField ShowNextPageButton="false" />
<asp:NumericPagerField />
<asp:NextPreviousPagerField ShowPreviousPageButton="false" />
</Fields>
</div>
</div>

这是我的 .ascx 文件中的代码listTexts_DataBound 的事件位于 .cs(代码隐藏)文件中

protected void listTexts_DataBound(object sender, EventArgs e)
{
DataPager.Visible = (DataPager.PageSize < DataPager.TotalRowCount);
}

当我运行代码时,我必须按下一页或上一页按钮两次才能移至下一页或上一页。我需要在第一次点击时发生这种情况。假设有 100 页,最后有 10 个数字,第一个 Ant 的下一个中有上一个,当我单击下一个时,我必须单击两次才能将页面从 1 移动到 2,当我单击上一个时,我必须单击两次才能将页面从第 10 页移动到 9 但是其余的导航,即从 2 到 9 仅在第一次点击时发生。

请指导。提前致谢

最佳答案

我们可以使用OnPreRender =“DataPager_PreRender”,在这个事件中我们可以分配数据并绑定(bind)。

<asp:DataPager ID="DataPager" runat="server" PagedControlID="ListView"
PageSize="5" OnPreRender="DataPager_PreRender">

这应该是背后的代码:

protected void DataPager_PreRender(object sender, EventArgs e)
{
ListView.DataSource = db.datasource();
ListView.DataBind();
}

这解决了问题

关于c# - 使用 Datapager 在 asp.net 中分页 - 下一个、上一个按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20540725/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com