首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

datalist分页只显示一页的有关问题

2012-08-09 
datalist分页只显示一页的问题源码:C# codeusing Systemusing System.Collections.Genericusing System.

datalist分页只显示一页的问题
源码:

C# code
using System;using System.Collections.Generic;using System.Linq;using System.Web;using System.Web.UI;using System.Web.UI.WebControls;using System.Data;using MySql.Data.MySqlClient;public partial class SourceList : System.Web.UI.Page{    DB db = new DB();    string source_type,tag;    PagedDataSource pds;    DataView dview;    protected void Page_Load(object sender, EventArgs e)    {        if (!IsPostBack)  //首次加载页面        {            try            {                source_type = db.ConverSql(Request["SourceType"].ToString());                tag = db.ConverSql(Request["Tag"].ToString());            }            catch (Exception ex)            {                Response.Redirect("~/Default.aspx");            }            ViewState["pageindex"] = "0";            InitData();        }            }    /*     *显示界面上的资源列表      *      */    public void InitData()    {        string strsql = "";        pds = new PagedDataSource();        pds.PageSize = 2;        pds.AllowPaging = true;        Title = source_type + "|" + tag + "下载列表";        strsql = "select * from tb_SourceInfo where SourceType ='" + source_type + "' and Tag='" + tag + "'";        MySqlCommand mycmd = db.GetCommandStr(strsql);        try        {            db.ExecNonQuery(mycmd);        }        catch (Exception ex)        {            Response.Redirect("~/Default.aspx");        }        DataTable dtTable = db.GetDataSet(mycmd, "news");        pds.CurrentPageIndex = int.Parse(ViewState["pageindex"].ToString());        if (dtTable != null)  //判断dsTable里面是否存在数据        {            dview = dtTable.DefaultView;            pds.DataSource = dview;            this.SouceList.DataSource = pds;            this.SouceList.DataBind();            if (!pds.IsFirstPage)            {                lkPre.Visible = true;            }            else            {                lkPre.Visible = false;            }            if (!pds.IsLastPage)                {                lkNext.Visible = true;            }            else            {                lkNext.Visible = false;            }            this.page_num.InnerText = Convert.ToString(pds.CurrentPageIndex + 1);            this.page_num_total.InnerText = "共" + pds.PageCount.ToString() + "页";        }        else  //不存在数据        {            //this.td_content.InnerHtml = "<div>没有内容了</div>";            lkPre.Visible = false;            lkPre.Visible = false;        }    }    protected void IndexChanging(object sender, CommandEventArgs e)    {        string strCommand = ((LinkButton)sender).CommandArgument.ToString();        int pageindex = int.Parse(ViewState["pageindex"].ToString());        switch (strCommand)        {            case "pre":                pageindex = pageindex - 1;                break;            case "next":                pageindex = pageindex + 1;                break;        }        ViewState["pageindex"] = pageindex;        InitData();    }}

前台:
HTML code
<div style="float:left;width:70%;margin-left:2PX;border:1px solid #9BD;">    <asp:DataList ID="SouceList" runat="server" Width="700px">        <ItemTemplate>            <div style="font-size:20px;"><a href="download.aspx?SourceID=<%# DataBinder.Eval(Container.DataItem, "SourceID").ToString() %>" class="list_a"><%# DataBinder.Eval(Container.DataItem, "SourceName").ToString() %></a></div>            <div style="font-size:small;"><span>资源类型:</span><%# DataBinder.Eval(Container.DataItem, "SourceType").ToString() %><span>&nbsp; 资源标签:            <%# DataBinder.Eval(Container.DataItem, "Tag").ToString() %></span></div>            <div style="color:#999;font-size:small;"><span>资源描述:</span><%# DataBinder.Eval(Container.DataItem, "Discription").ToString() %></div>            <div style="text-align:right;font-size:small;">上传日期:<%# DataBinder.Eval(Container.DataItem, "LoadTime").ToString().Replace("0:00:00", "")%></div>        </ItemTemplate>    </asp:DataList>    <div>    <span style="font-size:small;">当前第</span><span id="page_num" runat="server" style="font-size:small;color:Red;"></span><span style="margin-right:30px;font-size:small;">页</span>        <asp:linkbutton ID="lkPre" OnCommand="IndexChanging" CommandArgument="pre" runat="server" >上一页></asp:linkbutton>&nbsp;&nbsp;&nbsp;            <asp:linkbutton ID="lkNext" OnCommand="IndexChanging" CommandArgument="next" runat="server" >下一页</asp:linkbutton>            <span id="page_num_total" style="font-size:small; margin-left:30px;" runat="server"></span>    </div>    </div> 


效果是:能够正常显示第一页的数据,但是跳到下一页时就没有数据显示了,这是为什么呀?

[解决办法]
打断点调试一下看

http://topic.csdn.net/u/20110325/18/C8DC1FE2-55EB-4C5E-9635-135E8C070720.html#r_72394758

热点排行