国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 學(xué)院 > 開(kāi)發(fā)設(shè)計(jì) > 正文

使用DataList實(shí)現(xiàn)數(shù)據(jù)分頁(yè)的技術(shù)

2019-11-14 14:28:02
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

今天做網(wǎng)站的時(shí)候,用到了分頁(yè)技術(shù),我把使用方法記錄下來(lái),以便日后查閱以及幫助新手朋友們。

DataList控件可以按照列表的形式顯示數(shù)據(jù)表中的多行記錄,但是被顯示的多行記錄沒(méi)有分頁(yè)功能,使用起來(lái)不太方便。因此需要借助PagedDataSource類來(lái)實(shí)現(xiàn)分頁(yè),該類封裝了數(shù)據(jù)控件的分頁(yè)屬性,其常用屬性及說(shuō)明如下表所示。

屬    性說(shuō)    明
AllowPaging

獲取或設(shè)置是否啟用分頁(yè)

AllowCustomPaging獲取或設(shè)置是否啟用自定義分頁(yè)

CurrentPageIndex獲取或設(shè)置當(dāng)前顯示頁(yè)的索引

DataSource

獲取或設(shè)置用于填充控件中項(xiàng)的源數(shù)據(jù)

PageSize

獲取或設(shè)置要在數(shù)據(jù)綁定控件的每頁(yè)上顯示的項(xiàng)數(shù)

PageCount

獲取顯示數(shù)據(jù)綁定控件中各項(xiàng)所需的總頁(yè)數(shù)

FirstIndexPage

獲取頁(yè)中的第一個(gè)索引

IsFirstPage

獲取一個(gè)值,該值指示當(dāng)前頁(yè)是否是首頁(yè)

IsLastPage

獲取一個(gè)值,該值指示當(dāng)前頁(yè)是否是最后一頁(yè)

DataKeyField

獲取或設(shè)置由DataSource屬性指定的數(shù)據(jù)源中的鍵字段

DataKeys

獲取存儲(chǔ)在數(shù)據(jù)列表控件中的每個(gè)記錄的鍵值

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

大致實(shí)現(xiàn)效果圖如下:

具體代碼如下:

前臺(tái)(aspx)代碼:

<div class="you_align">        <table style="width:450px" cellpadding="0" cellspacing="0" align="center" >            <tr><td>&nbsp;</td></tr>            <tr>               <td style="width: 600px; text-align: align; font-size: 9pt; height: 15px;" >                  <asp:Label ID="labCP" runat="server" Text="當(dāng)前第"></asp:Label>                     <asp:Label ID="labPage" runat="server" Text="1"></asp:Label> &nbsp;頁(yè)                  <asp:Label ID="labTP" runat="server" Text=""></asp:Label>                     <asp:Label ID="labBackPage" runat="server"></asp:Label> 頁(yè)                  <asp:LinkButton ID="lnkbtnOne" runat="server" Font-Underline="False" ForeColor="Red" OnClick="lnkbtnOne_Click">第一頁(yè)</asp:LinkButton>                  <asp:LinkButton ID="lnkbtnUp" runat="server" Font-Underline="False" ForeColor="Red"  OnClick="lnkbtnUp_Click">上一頁(yè)</asp:LinkButton>                  <asp:LinkButton ID="lnkbtnNext" runat="server" Font-Underline="False" ForeColor="Red" OnClick="lnkbtnNext_Click">下一頁(yè)</asp:LinkButton>&nbsp;                  <asp:LinkButton ID="lnkbtnBack" runat="server" Font-Underline="False" ForeColor="Red" OnClick="lnkbtnBack_Click">尾頁(yè)</asp:LinkButton>&nbsp;&nbsp;               </td>            </tr>    </table>    </div>

后臺(tái)aspx.cs代碼如下:

using System;using System.Collections;using System.Configuration;using System.Data;using System.Linq;using System.Web;using System.Web.Security;using System.Web.UI;using System.Web.UI.HtmlControls;using System.Web.UI.WebControls;using System.Web.UI.WebControls.WebParts;using System.xml.Linq;public partial class zwgk : System.Web.UI.Page{    CommonClass CC = new CommonClass(); PRotected void Page_Load(object sender, EventArgs e)    {        bind();                //政務(wù)公開(kāi)        ZWGK.DataSource = CC.GetDataSet("SELECT  * FROM News WHERE Style = '政務(wù)公開(kāi)' order by Time Desc", "News");        ZWGK.DataKeyField = "id";        ZWGK.DataBind();    }    protected void bind()    {        //取得當(dāng)前頁(yè)的頁(yè)碼        int curpage = Convert.ToInt32(this.labPage.Text);        //使用PagedDataSource類實(shí)現(xiàn)DataList控件的分頁(yè)功能        PagedDataSource ps = new PagedDataSource();        //獲取數(shù)據(jù)集        DataSet ds = CC.GetDataSet("select * from News where style='政務(wù)公開(kāi)' order by Time Desc", "News");        ps.DataSource = ds.Tables["News"].DefaultView;        //是否可以分頁(yè)        ps.AllowPaging = true;        //顯示的數(shù)量        ps.PageSize = 15;        //取得當(dāng)前頁(yè)的頁(yè)碼        ps.CurrentPageIndex = curpage - 1;        this.lnkbtnUp.Enabled = true;        this.lnkbtnNext.Enabled = true;        this.lnkbtnBack.Enabled = true;        this.lnkbtnOne.Enabled = true;        if (curpage == 1)        {            //不顯示第一頁(yè)按鈕            this.lnkbtnOne.Enabled = false;            //不顯示上一頁(yè)按鈕            this.lnkbtnUp.Enabled = false;        }        if (curpage == ps.PageCount)        {            //不顯示下一頁(yè)            this.lnkbtnNext.Enabled = false;            //不顯示最后一頁(yè)            this.lnkbtnBack.Enabled = false;        }        //顯示分頁(yè)數(shù)量        this.labBackPage.Text = Convert.ToString(ps.PageCount);        //綁定DataList控件        this.ZWGK.DataSource = ps;        this.ZWGK.DataKeyField = "id";        this.ZWGK.DataBind();    }    //第一頁(yè)    protected void lnkbtnOne_Click(object sender, EventArgs e)    {        this.labPage.Text = "1";        this.bind();    }    //上一頁(yè)    protected void lnkbtnUp_Click(object sender, EventArgs e)    {        this.labPage.Text = Convert.ToString(Convert.ToInt32(this.labPage.Text) - 1);        this.bind();    }    //下一頁(yè)    protected void lnkbtnNext_Click(object sender, EventArgs e)    {        this.labPage.Text = Convert.ToString(Convert.ToInt32(this.labPage.Text) + 1);        this.bind();    }    //最后一頁(yè)    protected void lnkbtnBack_Click(object sender, EventArgs e)    {        this.labPage.Text = this.labBackPage.Text;        this.bind();    }    protected void ZWGK_ItemCommand(object source, DataListCommandEventArgs e)    {        int id = Convert.ToInt32(ZWGK.DataKeys[e.Item.ItemIndex].ToString());        Response.Write("<script language=javascript>location='show_News.aspx?id=" + id + "'</script>");    }}

 


發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 永寿县| 辽中县| 富宁县| 特克斯县| 开江县| 吕梁市| 咸丰县| 万年县| 繁峙县| 三河市| 林州市| 德江县| 宝丰县| 临武县| 博乐市| 玛曲县| 仪征市| 双峰县| 颍上县| 天镇县| 保定市| 汽车| 基隆市| 长寿区| 得荣县| 大连市| 河南省| 德钦县| 肃北| 巫溪县| 甘德县| 军事| 泸西县| 芒康县| 百色市| 卫辉市| 桃园市| 赤峰市| 皮山县| 清原| 彰化市|