成人午夜激情影院,小视频免费在线观看,国产精品夜夜嗨,欧美日韩精品一区二区在线播放

做個DataList 可分頁的數據源

2010-08-28 10:49:27來源:西部e網作者:

這個數據源,分兩部分,一是從數據類中調出數據,然后在本數據源中對分頁參數以及頁面分頁輔助控件進行操作!在前面有三個控件控制翻頁,一個下拉列表,兩個LinkButton!

關于更多類中數據操作的方法見 http://thcjp.cnblogs.com/archive/2006/06/18/428775.html 這篇

下面 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"];
    }
下面方法使用的數據源就是上面的這個
    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();
    }
關鍵詞:ASP.NET

贊助商鏈接:

主站蜘蛛池模板: 衢州市| 锡林浩特市| 丰镇市| 雷州市| 锡林浩特市| 东兴市| 喀什市| 磐石市| 彭山县| 定陶县| 南溪县| 博白县| 偃师市| 鹰潭市| 隆化县| 贵定县| 盘山县| 牙克石市| 瑞丽市| 灵寿县| 龙陵县| 宝坻区| 建瓯市| 禹州市| 田东县| 新田县| 永善县| 华宁县| 吴旗县| 八宿县| 名山县| 色达县| 永城市| 阿鲁科尔沁旗| 拜城县| 金塔县| 朝阳市| 遵义县| 柳林县| 酒泉市| 广德县|