3

我正在从数据库中提取 100 条记录中的 10 条并放入 gridview(这里没有数据源对象)。

如何启用gridview附带的分页?我知道总记录是 100 我可以用它来激活分页吗?

我知道我可以使用 DataSource 对象轻松地做到这一点,但我只是想知道就 GridView 而言我是否可以完全手动地做到这一点。

标记

<form id="form1" runat="server">
<div>

    <asp:GridView ID="GridView1" runat="server" AllowPaging="True" 
        AllowSorting="True" onpageindexchanging="GridView1_PageIndexChanging" 
        onsorting="GridView1_Sorting">
    </asp:GridView>

</div>
</form>

代码隐藏

protected void Page_Load(object sender, EventArgs e)
{
    GridView1.DataSource = GetCustomers();
    GridView1.DataBind();
}

强文本

4

1 回答 1

2

试试这个:

protected void Page_Load(object sender, EventArgs e)
{
   if(!Page.IsPostback) {BindData();}
}
protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e)
{
     GridView1.DataSource = GetCustomers();
     GridView1.PageIndex = e.NewPageIndex;
     GridView1.DataBind();

}

void BindData()
{
   GridView1.DataSource = GetCustomers();
   GridView1.DataBind();

}

您还需要将其添加到 gridview 标记中:

OnPageIndexChanging="GridView1_PageIndexChanging"
于 2012-05-11T02:52:24.443 回答