色尼玛亚洲综合影院,亚洲3atv精品一区二区三区,麻豆freexxxx性91精品,欧美在线91

ASP.NET技巧:做個(gè)DataList可分頁(yè)的數(shù)據(jù)源

  這個(gè)數(shù)據(jù)源,分兩部分,一是從數(shù)據(jù)類中調(diào)出數(shù)據(jù),然后在本數(shù)據(jù)源中對(duì)分頁(yè)參數(shù)以及頁(yè)面分頁(yè)輔助控件進(jìn)行操作!在前面有三個(gè)控件控制翻頁(yè),一個(gè)下拉列表,兩個(gè)LinkButton!

  下面 fill() 方法調(diào)用很簡(jiǎn)單,在頁(yè)面中要重新綁定的地方 寫(xiě)上 fill() 就可以了,呵呵!但是一定要寫(xiě)哦,例如翻頁(yè)動(dòng)作執(zhí)行后!

  下面是db類中的ds方法

    public static DataTable ds(string que)
    {//返回一個(gè)裝載了SQL制定留言的數(shù)據(jù)表,
        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();
    }下面方法使用的數(shù)據(jù)源就是上面的這個(gè)
    private void fill()
    {//做的一個(gè)方法,因?yàn)轫?yè)內(nèi)將有多次的綁定
        //這里設(shè)置一個(gè)隱藏的Label,用與儲(chǔ)存當(dāng)前的頁(yè)索引
        int cup = Convert.ToInt32(pagelbl.Text);

        PagedDataSource ps = new PagedDataSource();//NEW一個(gè)分頁(yè)數(shù)據(jù)源
        ps.DataSource = odb.ds("select * from guest order by id desc").DefaultView;//送一個(gè)SQL語(yǔ)句進(jìn)去,確定該數(shù)據(jù)源的數(shù)據(jù)源,有點(diǎn)繞吧,呵呵
        ps.AllowPaging = true;//允許分頁(yè)
        ps.PageSize = 2;//設(shè)置頁(yè)的數(shù)量
        ps.CurrentPageIndex = cup-1;
        if (!IsPostBack)
        {//判斷頁(yè)面是否第一次載入
            for (int i = 1; i <= ps.PageCount; i++)
            {//循環(huán)出頁(yè)碼
                pageddl.Items.Add(i.ToString());
            }
        }
        //下面主要是控制上下翻頁(yè)按紐是否起用
        pageup.Enabled = true;
        pagedown.Enabled = true;
        if (ps.IsFirstPage)
        {//如果是最前頁(yè),上頁(yè)按紐不可用
            pageup.Enabled = false;
        }
        if (ps.IsLastPage)
        {//如果是最后頁(yè),下頁(yè)按紐不可用
            pagedown.Enabled = false;
        }
        //設(shè)置頁(yè)碼下拉菜單當(dāng)前選中的值
        pageddl.SelectedItem.Text = cup.ToString();
        //終于可以綁定給DataList了
        DataList1.DataSource = ps;
        DataList1.DataKeyField = "id";
        DataList1.DataBind();
    }

  再下面是翻頁(yè)事件的處理

    protected void pageddl_SelectedIndexChanged(object sender, EventArgs e)
    {//頁(yè)碼下拉菜單事件
        pagelbl.Text = pageddl.SelectedItem.Text.ToString();
        fill();
    }
    protected void pagedown_Click(object sender, EventArgs e)
    {//下頁(yè)事件
        pagelbl.Text = Convert.ToString(Convert.ToInt32(pagelbl.Text)+1);
        fill();
    }
    protected void pageup_Click(object sender, EventArgs e)
    {//上頁(yè)事件
        pagelbl.Text = Convert.ToString(Convert.ToInt32(pagelbl.Text)-1);
        fill();
    }

 

AspNet技術(shù)ASP.NET技巧:做個(gè)DataList可分頁(yè)的數(shù)據(jù)源,轉(zhuǎn)載需保留來(lái)源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 余江县| 旌德县| 边坝县| 新建县| 田阳县| 五莲县| 普格县| 个旧市| 平舆县| 新野县| 五河县| 彰化市| 盐源县| 和政县| 西畴县| 沧源| 射洪县| 辽宁省| 永定县| 宁安市| 汝南县| 连平县| 滨州市| 民权县| 金川县| 那曲县| 高要市| 永安市| 广河县| 南溪县| 呼伦贝尔市| 洛扎县| 马龙县| 安图县| 台中市| 阿荣旗| 潜山县| 蒙城县| 梁山县| 孟津县| 诸暨市|