• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
  • ASP.NET技巧:做個DataList 可分頁的數據源

    發表于:2008-04-07來源:作者:點擊數: 標簽:
    這個數據源,分兩部分,一是從數據類中調出數據,然后在本數據源中對分頁參數以及頁面分頁輔助控件進行操作!在前面有三個控件控制翻頁,一個下拉列表,兩個LinkButton! 下面 fill() 方法調用很簡單,在頁面中要重新綁定的地方 寫上 fill() 就可以了,呵呵!
    這個數據源,分兩部分,一是從數據類中調出數據,然后在本數據源中對分頁參數以及頁面分頁輔助控件進行操作!在前面有三個控件控制翻頁,一個下拉列表,兩個LinkButton!

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

    原文轉自:http://www.kjueaiud.com

    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>