Repeater读取数据并分页

Repeater读取数据并分页
----------控件清单---------
  Panel Panel1;
  Button Button1;
  Button Button2;
  Label Label1;
  Label Label2;
  Label Label3;
  Label Label4;
  Label Label5;
  Repeater Repeater1;

--------------------------.cs页-----------------------------------
private void Page_Load(object sender, System.EventArgs e)
  {
   if(!this.IsPostBack)
   {
    this.Label1.Text="1";
    this.fill();
   }
  }
  private void fill()
  {
  int pag=Convert.ToInt32(this.Label1.Text);//设置当前页
    SqlConnection con=new SqlConnection("server=.;database=Northwind;uid=sa;pwd=980123;");//实例化连接
    SqlDataAdapter sda=new SqlDataAdapter();//建立一个数据适配器对象
    sda.SelectCommand=new SqlCommand("select * from Employees",con);//实例化SelectCommand,并用他从数据库读出全部数据
    DataSet ds=new DataSet();//定义一个数据集填充
    sda.Fill(ds,"name");//使用适配器填充数据集到本地表“name”
   PagedDataSource ps=new PagedDataSource();//实例化一个PagedDataSource,这个本来是封装是DATAGRID里面的
   ps.DataSource=ds.Tables["name"].DefaultView;//设置他的数据源为ds.Tables["name"].DefaultView数据视图
   ps.AllowPaging=true;//允许分页
   ps.PageSize=3;//每页显示数量
   ps.CurrentPageIndex=pag-1;//当前页码,因为页是从0开始的,所以要减1
   this.Button1.Enabled=true;//按钮当前状态
   this.Button2.Enabled=true;
   this.Label5.Text=ps.PageCount.ToString();
   if(pag==1)
   {
   this.Button1.Enabled=false;//如果当前页是  1 ,上一页按钮不可用
   }
   if(pag==ps.PageCount)
   {
   this.Button2.Enabled=false;//如果当前页是最后一页 ,下一页按钮不可用
   }
       this.Repeater1.DataSource=ps;
    this.Repeater1.DataBind();
  }
窗体代码
private void Button2_Click(object sender, System.EventArgs e)
  {
   this.Label1.Text=((Convert.ToInt32(this.Label1.Text))+1).ToString();
   this.fill();
  }

  private void Button1_Click(object sender, System.EventArgs e)
  {
  this.Label1.Text=((Convert.ToInt32(this.Label1.Text))-1).ToString();
    this.fill();
  }

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值