做个DataList 可分页的数据源

小情绪humane

小情绪humane

2016-02-19 15:29

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

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

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

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

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

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

  下面是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();
      }

展开更多 50%)
分享

猜你喜欢

做个DataList 可分页的数据源

Web开发
做个DataList 可分页的数据源

实时更新Excel文档外部数据源的数据

电脑入门
实时更新Excel文档外部数据源的数据

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

浅析数据源在JDBC中的应用

编程语言 网络编程
浅析数据源在JDBC中的应用

JDBMonitor在多数据源中的问题

编程语言 网络编程
JDBMonitor在多数据源中的问题

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

使用Java动态创建ODBC数据源

编程语言 网络编程
使用Java动态创建ODBC数据源

不用数据源打开数据库(DSNless connection)

ASP
不用数据源打开数据库(DSNless connection)

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

cookies的丢失和中文乱码

cookies的丢失和中文乱码

如何修复MySQL数据库表

如何修复MySQL数据库表
下拉加载更多内容 ↓