DataGrid等数据控件的用法(3)

上一节说明了如何通过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

posted @ 2004-04-25 16:15  9527的晃悠人生  阅读(1390)  评论(1)    收藏  举报