做个DataList 可分页的数据源

2016-02-19 15:29 9 1 收藏

人生本是一个不断学习的过程,在这个过程中,图老师就是你们的好帮手,下面分享的做个DataList 可分页的数据源懂设计的网友们快点来了解吧!

【 tulaoshi.com - Web开发 】

  这个数据源,分两部分,一是从数据类中调出数据,然后在本数据源中对分页参数以及页面分页辅助控件进行操作!在前面有三个控件控制翻页,一个下拉列表,两个LinkButton!

  关于更多类中数据操作的方法见 http://thcjp.cnblogs.com/archive/2006/06/18/428775.html 这篇

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/webkaifa/)

  下面 fill() 方法调用很简单,在页面中要重新绑定的地方 写上 fill() 就可以了,呵呵!但是一定要写哦,例如翻页动作执行后!

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/webkaifa/)

  下面是db类中的ds方法
      public static DataTable ds(string que)
      {//返回一个装载了SQL制定留言的数据表,
          OleDbConnection con = odb.con();
          OleDbDataAdapter oda = new OleDbDataAdapter();
          oda.SelectCommand=new OleDbCommand(que,con);
          DataSet ds = new DataSet();
          oda.Fill(ds,"thc");
          return ds.Tables["thc"];
          con.Close();
      }下面方法使用的数据源就是上面的这个
      private void fill()
      {//做的一个方法,因为页内将有多次的绑定
          //这里设置一个隐藏的Label,用与储存当前的页索引
          int cup = Convert.ToInt32(pagelbl.Text);

          PagedDataSource ps = new PagedDataSource();//NEW一个分页数据源
          ps.DataSource = odb.ds("select * from guest order by id desc").DefaultView;//送一个SQL语句进去,确定该数据源的数据源,有点绕吧,呵呵
          ps.AllowPaging = true;//允许分页
          ps.PageSize = 2;//设置页的数量
          ps.CurrentPageIndex = cup-1;
          if (!IsPostBack)
          {//判断页面是否第一次载入
              for (int i = 1; i = ps.PageCount; i++)
              {//循环出页码
                  pageddl.Items.Add(i.ToString());
              }
          }
          //下面主要是控制上下翻页按纽是否起用
          pageup.Enabled = true;
          pagedown.Enabled = true;
          if (ps.IsFirstPage)
          {//如果是最前页,上页按纽不可用
              pageup.Enabled = false;
          }
          if (ps.IsLastPage)
          {//如果是最后页,下页按纽不可用
              pagedown.Enabled = false;
          }
          //设置页码下拉菜单当前选中的值
          pageddl.SelectedItem.Text = cup.ToString();
          //终于可以绑定给DataList了
          DataList1.DataSource = ps;
          DataList1.DataKeyField = "id";
          DataList1.DataBind();
      }
  再下面是翻页事件的处理
      protected void pageddl_SelectedIndexChanged(object sender, EventArgs e)
      {//页码下拉菜单事件
          pagelbl.Text = pageddl.SelectedItem.Text.ToString();
          fill();
      }
      protected void pagedown_Click(object sender, EventArgs e)
      {//下页事件
          pagelbl.Text = Convert.ToString(Convert.ToInt32(pagelbl.Text)+1);
          fill();
      }
      protected void pageup_Click(object sender, EventArgs e)
      {//上页事件
          pagelbl.Text = Convert.ToString(Convert.ToInt32(pagelbl.Text)-1);
          fill();
      }

来源:http://www.tulaoshi.com/n/20160219/1609730.html

延伸阅读
标签: Web开发
XML数据源对象是一个ActiveX控件,允许你在XML文件和HTML页面之间操作数据。本文将向你展示如何从各种XML数据源中提取数据,以及如何使用JavaScript显示这些数据。 XML数据源对象DSO是一个微软ActiveX控件,构建在微软IE4以后的版本上。这个对象允许你把一个外部的XML文件或者嵌入HTML文件中的内容提取到HTML页面中。 ...
标签: excel
Excel2013如何从数据源中提取条件数据   1、启动Excel2013,我们先在源数据表中A2单元格输入下面的公式,B1单元格要进行绝对引用,然后查询表中C1单元格同样如此。 2、回车键按下,得到结果1,双击填充柄,将表格中余下数据一并填充完整。 3、返回到查询表中,单击A4单元格,输入公式,稍后我跟大家说明。 4...
标签: Web开发
    在代码编写中经常使用DataSet做为控件的数据源,通常一个控件只能绑定一个数据源。如果要将多次查询数据库的结果绑定到一个控件中,就必须把多次查询的结果填充到同一个数据源中。当然此功能也可以动态画表格来实现,不过我感觉动态处理表格实在是太麻烦了。为此做了以下测试并且试验成功,现在分享出来。   &...
由于历史的原因,在多数企业都同时存在多个数据库平台,在每个数据库平台上都运行着相关的一套或多套应用。随着单位业务不断扩大,如何在不影响现有应用运行的前提下,快速有效地整合这些分布在单位内部不同数据库平台上的数据,是一个困扰CIO们的问题。面对这一问题,现有解决方案大致可分为以下两种: 1.在应用程序上建立连接不同...
在DELPHI数据库应用程序中,我们访问数据库通常有两种方法.一种是通过BDE数据库搜索引擎,即利用DELPHI自带的数据库驱动程序,这种方法的优点是速度快,但应用范围有限,当数据库版本更新时,有可能不能用于操作新的数据库;另一种方法是通过ODBC,这种方法的优点是可以随操作系统(如WINDOWS)提供,作为标准接口能适应多种数据库,缺点是...

经验教程

925

收藏

29
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部