gpt4 book ai didi

asp.net - 获取DataPager的当前页码

转载 作者:行者123 更新时间:2023-12-04 04:57:37 25 4
gpt4 key购买 nike

我正在尝试获取我的 ListView 的当前页面的页码。我正在使用带有以下代码的 DataPager 组件:

int CurrentPage = ((DataPager1.StartRowIndex) / DataPager1.MaximumRows) + 1;

尝试获取加载时的页码,即当用户浏览页面时,但是发生的是 DataPager1.StartRowIndex 返回上一页的索引而不是新页面的索引,因此,我的页数是计算错误。

在上述情况下 - MaximumRows = 15。我希望 StartRowIndex 在第一页上等于 0,因此 (0/15)+1 会给我一个页码 1。在第 2 页上,我希望 StartRowIndex 等于 15,因此当前页码为 2。

提供更多信息:

我正在使用 ListView 组件-
<asp:ListView ID="lvQuals" runat="server" DataSourceID="dsListQual" 
OnItemDataBound="lvQuals_ItemDataBound"
OnPagePropertiesChanged="lvQuals_PagePropertiesChanged">

后面有以下代码 -
public void lvQuals_PagePropertiesChanged(object sender, EventArgs e)
{
ToggleArchivedLink();
}

protected void ToggleArchivedLink()
{
int CurrentPage = ((DataPager1.StartRowIndex) / DataPager1.MaximumRows) + 1;

DataPager1.StartRowIndex 有时显示正确的页面索引,但有时显示前一页的索引。

最佳答案

可能是在您尝试计算当前页码时。您的代码未指明您在哪里执行此操作,但正确的位置是在 PagePropertiesChanging 期间。 ListView 的事件。像这样:

protected void ListView_PagePropertiesChanging(object sender,PagePropertiesChangingEventArgs e)    
{
int CurrentPage = ((DataPager1.StartRowIndex) / DataPager1.MaximumRows) + 1;
}

然后像这样绑定(bind)到事件:
<asp:ListView ... OnPagePropertiesChanging="ListView_PagePropertiesChanging" ... >

关于asp.net - 获取DataPager的当前页码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16570994/

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