上一节说明了如何通过DataGrid显示数据,这一节 说明一下,DataGrid分页的实现。
DataGrid带有默认导航控件的默认分页,在属性生成器中对分页进行设置,
为DataGrid的 PageIndexChanged 事件创建一个响应分页请求的事件处理程序
private void DataGrid1_PageIndexChanged(object source,
System.Web.UI.WebControls.DataGridPageChangedEventArgs e)
{
DataGrid1.CurrentPageIndex = e.NewPageIndex;
DataGrid1.DataBind();
}
现在说明如何进行自定义分页,设置四个LinkButton , 将其CommandName分别定义为FIRST、PREVIOUS、NEXT、LAST
从 Click 事件的下拉列表中选择 NavigationButtonClick 事件
private void NavigationButtonClick(object sender, System.EventArgs e)
{
string direction = ((Button)sender).CommandName;
switch (direction.ToUpper())
{
case "FIRST" :
DataGrid1.CurrentPageIndex = 0;
break;
case "PREVIOUS" :
DataGrid1.CurrentPageIndex =
Math.Max(DataGrid1.CurrentPageIndex -1, 0);
break;
case "NEXT" :
DataGrid1.CurrentPageIndex =
Math.Min(DataGrid1.CurrentPageIndex + 1,
DataGrid1.PageCount - 1);
break;
case "LAST" :
DataGrid1.CurrentPageIndex = DataGrid1.PageCount - 1;
break;
default :
break;
}
DataGrid1.DataBind();
}
还可以加入跳转功能 加入一个 textbox ,<asp:TextBox Id=PageIndexTB Runat=Server></asp:TextBox><asp:Button Text='Go' Runat=Server Id='GoBT'></asp:Button >
private void GoBT_Click(object sender, System.EventArgs e)
{
DataGrid1.CurrentPageIndex = PageIndexTB.Text - 1;
DataGrid1.DataBind();
}
参考:
http://dotnet.aspx.cc/ShowDetail.aspx?id=B12283DE-DB20-4322-ACCC-12724442808A