[code=C#]<%@ Page Title="" Language="C#" MasterPageFile="~/MasterPage.master" AutoEventWireup="true" CodeFile="ShowThread.aspx.cs" Inherits="ShowThread" %><asp:Content ID="Content1" ContentPlaceHolderID="ContentMain" Runat="Server">
    <div id="STMain">
        <asp:DataList ID="DataList1" runat="server" Visible="False">
            <ItemTemplate>
                <asp:Panel ID="Topic" runat="server" CssClass="Panel">
        <div class="STMDIV">
            <div class="STLeft"><ul class="STRUL">
                <li>
                    <img alt="<%# DataBinder.Eval(Container.DataItem, "Uuser")%>" src="<%# DataBinder.Eval(Container.DataItem, "Uphoto")%>" /></li>
                    <li>
                        <table style="width: 100%; text-align:left;">
                            <tr>
                                <td style="width: 60px">
                                    用户名:&nbsp;
                                </td>
                                <td>
                                   <%# DataBinder.Eval(Container.DataItem, "Uuser")%>
                                </td>
                            </tr>
                            <tr>
                                <td style="width: 60px">
                                    外&nbsp;&nbsp;&nbsp;号:</td>
                                <td>
                                    <%# DataBinder.Eval(Container.DataItem, "Uwh")%>
                                </td>
                            </tr>
                            <tr>
                                <td style="width: 60px">
                                    身&nbsp;&nbsp;&nbsp;份:</td>
                                <td>
                                    &nbsp; &nbsp;
                                </td>
                            </tr>
                        </table>
                    </li>
            </ul></div>
            <div class="STRight">
                <div class="STRTop"> <%# DataBinder.Eval(Container.DataItem, "Title")%>
                   </div>
                <div class="STRMiddle"><%# UBBtalk(Convert.ToString(DataBinder.Eval(Container.DataItem, "Talk")))%></div>
                <div class="STRButton"><%# DataBinder.Eval(Container.DataItem, "Usign")%></div>
            </div>
        </div>
    </asp:Panel>
            </ItemTemplate>
        </asp:DataList> 
    
            <asp:DataList ID="DataList2" runat="server">
            <ItemTemplate>
                <asp:Panel ID="ff" runat="server" CssClass="Panel">
        <div class="STMDIV">
            <div class="STLeft"><ul class="STRUL">
                <li>
                    <img alt="<%# DataBinder.Eval(Container.DataItem, "Uuser")%>" src="<%# DataBinder.Eval(Container.DataItem, "Uphoto")%>" /></li>
                    <li>
                        <table style="width: 100%; text-align:left;">
                            <tr>
                                <td style="width: 60px">
                                    用户名:&nbsp;
                                </td>
                                <td>
                                   <%# DataBinder.Eval(Container.DataItem, "Uuser")%>
                                </td>
                            </tr>
                            <tr>
                                <td style="width: 60px">
                                    外&nbsp;&nbsp;&nbsp;号:</td>
                                <td>
                                    <%# DataBinder.Eval(Container.DataItem, "Uwh")%>
                                </td>
                            </tr>
                            <tr>
                                <td style="width: 60px">
                                    身&nbsp;&nbsp;&nbsp;份:</td>
                                <td>
                                    &nbsp; &nbsp;
                                </td>
                            </tr>
                        </table>
                    </li>
            </ul></div>
            <div class="STRight">
                <div class="STRTop">
                   </div>
                <div class="STRMiddle"><%# UBBtalk(Convert.ToString(DataBinder.Eval(Container.DataItem, "RTalk")))%></div>
                <div class="STRButton"><%# DataBinder.Eval(Container.DataItem, "Usign")%></div>
            </div>
        </div>
    </asp:Panel>
            </ItemTemplate>
        </asp:DataList> 
      
        <asp:Label ID="Label1" runat="server" Text=""></asp:Label><asp:LinkButton ID="LinkButton1"
            runat="server">上一页</asp:LinkButton><asp:LinkButton ID="LinkButton2" runat="server">下一页</asp:LinkButton>
            <br/>
        <br />

解决方案 »

  1.   

    =========================上面是前台代码 ,下面是后台代码===============================
    using System;
    using System.Collections.Generic;
    using System.Globalization;
    using System.Web;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    using System.Data;
    using System.Text.RegularExpressions;
    using W.SOFT.DBase;public partial class ShowThread : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            if (Convert.ToInt32(Request.QueryString["Page"]) == 1 || Request.QueryString["Page"] == null)
            {
                topic();
                DataList1.Visible = true;
            }
            else
                DataList1.Visible = false;
                DataListDataBind();
            
           
        }
       private void topic()
       {
            int _TID = Convert.ToInt32(Request.QueryString["TID"]);
            DBase db = new DBase();
            string strSQL = "select t.TID,u.UID,t.TFace,t.Title,t.Talk,u.UUser,t.TLRUser,t.TLDate,t.TJ,t.TTop,TLock,u.Uwh,u.ULlogin,u.Uphoto,u.Uqq,u.Uemail,u.Usign  FROM  USERINFO u,TALK t  WHERE t.TID=" + _TID + " AND t.TUID=u.UID ";
            DataSet ds = new DataSet();
            db.DsSql(strSQL, "topic", ref ds);
            DataList1.DataSource = ds.Tables["topic"];
            DataList1.DataBind();
       }
        
        protected string UBBtalk(string temp) 
        {
            Ubb ubb = new Ubb();
            string _temp = ubb.UbbDecode(temp);
            return _temp;
               }
        private void DataListDataBind()
        {        DBase db = new DBase();
            string strSQL = "select r.RID,u.UID,r.RTalk,u.UUser,r.RDate,u.Uwh,u.ULlogin,u.Uphoto,u.Uqq,u.Uemail,u.Usign  FROM  USERINFO u,RETALK r  WHERE r.RTID=" + Convert.ToInt32(Request.QueryString["TID"]) + " AND u.UID=r.RUID  order by r.RDate asc ";
            DataSet ds = new DataSet();
            try
            {            db.DsSql(strSQL, "RTalk", ref ds);            PagedDataSource objPage = new PagedDataSource();            objPage.DataSource = ds.Tables["RTalk"].DefaultView;
      
                objPage.AllowPaging = true;
      
                objPage.PageSize = 20;
     
                int STPage;
                //判断是否具有页面跳转的请求 
                if (Request.QueryString["Page"] != null)
                {
                    STPage = Convert.ToInt32(Request.QueryString["Page"]);            }
                else
                    STPage = 1;
                //设置当前页的索引 
                objPage.CurrentPageIndex = STPage - 1;
                //显示状态信息 
                this.Label1.Text = "当前页:第" + STPage.ToString() + "页";
                //如果当前页面不是首页 
                if (!objPage.IsFirstPage)
                {
                    //定义"上一页"超级链接的URL为:当前执行页面的虚拟路径,并传递下一页面的索引值 
                    this.LinkButton1.PostBackUrl = Request.CurrentExecutionFilePath + "?TID="+Convert.ToInt32(Request.QueryString["TID"])+"&Page=" + Convert.ToString(STPage - 1);
                    //this.LinkButton1.Visible = true;
                }
                else
                    //this.LinkButton1.Visible = false;
                //如果当前页面不是最后一页 
                if (!objPage.IsLastPage)
                {
                    //定义"下一页"超级链接的URL为:当前执行页面的虚拟路径,并传递下一页面的索引值 
                    this.LinkButton2.PostBackUrl = Request.CurrentExecutionFilePath + "?TID=" + Convert.ToInt32(Request.QueryString["TID"]) + "&Page=" + Convert.ToString(STPage + 1);
                   // this.LinkButton2.Visible = true;
                }
                else
                   // this.LinkButton2.Visible = false;
                //进行数据绑定 
                DataList2.DataSource = objPage;
                DataList2.DataBind();
            }
            catch (Exception error)
            {
                //输出异常信息 
                Response.Write(error.ToString());
            }
        }
    }
    ================下面是DsSql 方法================================        public  DataSet DsSql(string StrSQL,string Tablename,ref DataSet ds)
            {
                SqlConnection myCn = new SqlConnection(StrConn);
                try
                {
                    myCn.Open();
                    SqlDataAdapter sda = new SqlDataAdapter(StrSQL, myCn);
                    //DataSet ds = new DataSet("ds");
                    sda.Fill(ds,Tablename);
                    return ds;            }
                catch (System.Data.SqlClient.SqlException e)
                {
                    throw new Exception(e.Message);
                }
                finally
                {
                    myCn.Close();
                }
            }===============================================有两个DATALIST。针对DATALIST2 的分页
       如果 每页显示的条目大于所有帖子的条目的话。可以正常显示。可是分页后DATALIST2就全部无法显示。
      

  2.   

    参考
    http://www.cnblogs.com/benon/articles/1114606.html
      

  3.   

    你的这个地方,用分页sql语句取对应页的记录string strSQL = "select r.RID,u.UID,r.RTalk,u.UUser,r.RDate,u.Uwh,u.ULlogin,u.Uphoto,u.Uqq,u.Uemail,u.Usign  FROM  USERINFO u,RETALK r  WHERE r.RTID=" + Convert.ToInt32(Request.QueryString["TID"]) + " AND u.UID=r.RUID  order by r.RDate asc "; 
    改成相关分页存储过程然后再用一条语句,获取总数,根据分页的数值,下标,显示上一页下一页的值试试你的代码太多,看得晕
      

  4.   

    SQL 2000 貌似不支持 05的那个 NUMBER()