繁体   English   中英

如何添加分页到GridView?

[英]How to add paging to GridView?

如何向此GridView添加分页?

C#代码:

protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e)
{
    GridView1.PageIndex = e.NewPageIndex;
    GridView1.DataBind();
}

错误

Specified argument was out of the range of valid values. Parameter name: index

您再次需要在页面中更改索引事件。 在这里您还没有写过。

链接

myGridView.DataSource = your datasource here;
myGridView.PageIndex = e.NewPageIndex;
myGridView.DataBind();

允许分页非常简单。调用网格视图的PageIndexChanging事件就像

protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e)
{
    GridView1.PageIndex = e.NewPageIndex;
    GridView1.DataSource = Your datasource here;
    GridView1.DataBind();
}

希望这对你有用..

我认为我要做的是编写页面索引代码,然后在此之后调用网格的实际绑定方法:

myGridView.PageIndex = e.NewPageIndex;
BindmyGridView();

哪里

private void BindmyGridView()
{
myGridView.DataSource = lst; //where lst is the datasource
myGridView.DataBind();
}

您还浏览了以下链接:

链接1

连结2

您需要使用可分页的数据源。 最简单的方法是只使用SqlDataSource 另外,请注意, PageIndex是从零开始的。

如果您使用ListCollection等,则它必须足够大,这是对空间的浪费。 基本上,如果您要进行手动分页,并且使用的是List ,则必须创建与结果的完整记录数一样大的List ,并且仅填写正确的页面。 不太实用,也很浪费,但是很简单。

除了创建自己的可分页数据源之外,还有另一种更好的方法。 您可以使用AllowCustomPaging属性来指定您已经在传递页面数据。 只需将VirtualItemCount设置为记录计数,然后仅传递DataSource一页并照常调用DataBind 那应该做:)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM