0

我在附加到数据分页器的列表视图中创建了链接。当用户单击链接时,他们会在左侧看到内容,但数据分页器会从任何页面更改为第 1 页。

4

1 回答 1

1

您需要为每个链接添加一个指示页码的查询字符串字段。然后,您需要将 datapager 控件的 querystringfield 属性设置为等于该查询字符串字段的名称。

例如:

   <asp:DataPager ID="dpItems" runat="server" PagedControlID="lvItems" PageSize="10" QueryStringField="pageNumber">

来自 MSDN:http: //msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.datapager.querystringfield.aspx

如果您想自己进行分页数学运算,还可以在运行时设置 StartRowIndex 属性。但是,您不能直接设置页面。例如,如果您每页显示 10 条记录,并且想要显示第二页,那么您可以在运行时代码中设置 myDataPager.StartRowIndex = 20。

或者,当您设置数据分页器的字段并设置查询字符串字段值时,数据分页器可以自动处理此数学并生成分页控件。您可以让它使用 Next/Previous 按钮、数字页面链接,或者在模板中定义您自己的分页控件。

如果定义你自己的分页控件,那么你可能看起来像这样:

然后在 lvItems 的 OnDataBound 事件中,使用 (Placeholder)lvItems.FindControl("phPageNumberButtons") 抓取占位符,然后将控件添加到占位符。

此外,请确保您定义 PagedControlID 等于您的列表视图的 ID

这是 MSDN 文章的链接,您可以在其中获取有关字段的更多信息:msdn.microsoft.com/en-us/library/

于 2010-04-29T15:42:32.023 回答