Datalist分页代码

<% @ Page Language = " c# "  ResponseEncoding = " gb2312 "   %>
<% @ Import Namespace = " System.Data "   %>
<% @ Import Namespace = " System.Data.SqlClient "   %>
< Script Language = " C# "  runat = " server " >
    
int  PageSize;
    
int  RecordCoutn;
    
int  pageCount;
    
int  CurrentPage;
    SqlConnection conn;
    
void  Page_Load( object  sender, EventArgs e)
    
{
        connOpen();
        PageSize 
= 2;
        
if (!IsPostBack)
        
{
            mathBd();
            CurrentPage 
= 0;
            RecordCoutn
=CalculateRecord();
            
this.lblRecordCount.Text=RecordCoutn.ToString();
            pageCount 
= RecordCoutn / PageSize;
            
this.lblPageCount.Text = pageCount.ToString();
            ViewState[
"PageIndex"= 0;
            ViewState[
"PageCount"= pageCount;
            DropDown();

        }

    }

    
private   void  connOpen()
    
{
        conn 
= new SqlConnection("server=ss/sqlexpress;database=Northwind;uid=sa;pwd=;");
        conn.Open(); 
    }

    
private   void  mathBd()
    
{
        
int startIndex;
        startIndex
=PageSize*CurrentPage;
        SqlDataAdapter sdr
=new SqlDataAdapter ("select * from Employees",conn);
        DataSet ds
=new DataSet ();
        sdr.Fill(ds,startIndex,PageSize,
"Employees");
        
this.MyDataGrid.DataSource=ds.Tables["Employees"].DefaultView;
        
this.MyDataGrid.DataBind();

        lbnFirstPage.Enabled 
= true;
        lbnNextPage.Enabled 
= true;
        lbnPrevPage.Enabled 
= true;
        lbnLastPage.Enabled 
= true;
        
if (CurrentPage == (pageCount-1))
        
{
            lbnNextPage.Enabled 
= false;
            lbnLastPage.Enabled 
= false;
        }

        
if (CurrentPage == 0)
        
{

            lbnFirstPage.Enabled 
= false;
            lbnPrevPage.Enabled 
= false;
        }

        
this.Label2.Text = (CurrentPage + 1).ToString();
        ViewState[
"PageIndex"= CurrentPage;
    }

    
public    int  CalculateRecord()
    
{
        
int intRecord;
        
string strComm = "select count (*) as co from Employees";
        SqlCommand comm 
= new SqlCommand(strComm, conn);
        SqlDataReader dr 
= comm.ExecuteReader();
        
if (dr.Read())
        
{
            intRecord 
= Convert.ToInt32(dr["co"].ToString());
        }

        
else
        
{
            intRecord 
= 0
        }

        dr.Close();
        
return intRecord;
    }

    
private   void  Page_OnClick( object  sender, CommandEventArgs e)
    
{
        CurrentPage 
=(int) ViewState["PageIndex"];
        pageCount
=(int)ViewState["PageCount"];
        
string cmd = e.CommandName;
        
switch (cmd)
        
{
            
case "next":
                
if (CurrentPage < (pageCount-1)) CurrentPage++break;
            
case"prev":
                
if (CurrentPage > 0) CurrentPage--break;
            
case"last":
                CurrentPage 
= pageCount - 1break;
            
default:
                CurrentPage 
= System.Convert.ToInt32(cmd); break;
        }

        ViewState[
"PageIndex"= CurrentPage;
        
//myDropDownList.SelectedIndex = CurrentPage;
        mathBd();
    }

    
private   void  DropDown()
    
{
        
for (int u = 0; u < pageCount; u++)
        
{
            myDropDownList.Items.Add(
new ListItem(""+(u + 1).ToString() + "", Convert.ToString(u)));
        }
 
    }

    
private   void  listchanged( object  sender, EventArgs e)
    
{
        CurrentPage 
= myDropDownList.SelectedIndex;
        mathBd(); 
    }

</ Script >
< html xmlns = " http://www.w3.org/1999/xhtml "   >
< head >
< title > Datalist 分页 </ title >
</ head >
< body >
< form id = " Form1 "  runat = " server " >

< asp:DataList id = " MyDataGrid "  runat = " server "
HeaderStyle
- BackColor = " #aaaadd "
AlternatingItemStyle
- BackColor = " Gainsboro "
EditItemStyle
- BackColor = " yellow "
>
 
< ItemTemplate >
  姓名:
<% # DataBinder.Eval(Container.DataItem, " EmployeeID " %>
 
</ ItemTemplate >
</ asp:DataList >
共有
< asp:Label id = " lblRecordCount "  ForeColor = " red "  runat = " server "   /> 条记录 & nbsp;
当前为
< asp:Label id = " Label2 "  ForeColor = " red "  runat = " server "   />/< asp:Label id = " lblPageCount "  ForeColor = " red "  runat = " server "   /> & nbsp;
& nbsp;
    
< br  />
   
< hr  />
    
< asp:LinkButton ID = " lbnFirstPage "  runat = " server "  CommandName = " 0 "  OnCommand = " Page_OnClick " > 首页 </ asp:LinkButton >
    
< asp:LinkButton ID = " lbnPrevPage "  runat = " server "  CommandName = " prev "  OnCommand = " Page_OnClick " > 上页 </ asp:LinkButton >
    
< asp:LinkButton ID = " lbnNextPage "  runat = " server "  CommandName = " next "  OnCommand = " Page_OnClick " > 下页 </ asp:LinkButton >
    
< asp:LinkButton ID = " lbnLastPage "  runat = " server "  CommandName = " last "  OnCommand = " Page_OnClick " > 未页 </ asp:LinkButton >
    
< asp:DropDownList ID = " myDropDownList "  runat = " server "  AutoPostBack = " true "  OnSelectedIndexChanged = " listchanged " >
</ asp:DropDownList >

</ form >
</ body >
</ html >

 
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
该资源内项目源码是个人的课程设计、毕业设计,代码都测试ok,都是运行成功后才上传资源,答辩评审平均分达到96分,放心下载使用! ## 项目备注 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用! 2、本项目适合计算机相关专业(如计科、人工智能、通信工程、自动化、电子信息等)的在校学生、老师或者企业员工下载学习,也适合小白学习进阶,当然也可作为毕设项目、课程设计、作业、项目初期立项演示等。 3、如果基础还行,也可在此代码基础上进行修改,以实现其他功能,也可用于毕设、课设、作业等。 下载后请首先打开README.md文件(如有),仅供学习参考, 切勿用于商业用途。 该资源内项目源码是个人的课程设计,代码都测试ok,都是运行成功后才上传资源,答辩评审平均分达到96分,放心下载使用! ## 项目备注 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用! 2、本项目适合计算机相关专业(如计科、人工智能、通信工程、自动化、电子信息等)的在校学生、老师或者企业员工下载学习,也适合小白学习进阶,当然也可作为毕设项目、课程设计、作业、项目初期立项演示等。 3、如果基础还行,也可在此代码基础上进行修改,以实现其他功能,也可用于毕设、课设、作业等。 下载后请首先打开README.md文件(如有),仅供学习参考, 切勿用于商业用途。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值