当前位置:首页 > 网络编程 > WEB编程 > ASP.net > 实现DataList控件的分页

实现DataList控件的分页

点击次数:14 次 发布日期:2008-11-26 23:43:11 作者:源代码网
源代码网推荐 DataList控件功能很强大,他支持选择、编辑,实现的方法也很简单,不过最令人头疼的就是它不像DataGrid控件一样内置了分页的功能,这么好的一个控件竟然不能分页!!!确实是一个很让人头疼的事情。
源代码网推荐  不过,只是DataList没有提供内置的分页功能,但是并不表示,我们不能使用DataList控件来实现分页,既然它不给我分页功能,那只好自己动手了。
源代码网推荐  下面是全部原代码,其实用到的方法和PHP中的分页差不多,只是这里用的是DataAdapter与DataSet组合,而不是PHP中的SQL语句直接搞定。
源代码网推荐
源代码网推荐
源代码网推荐
源代码网推荐default.aspx文件:
源代码网推荐<%@ Page language="c#" Codebehind="default.aspx.cs" AutoEventWireup="false" Inherits="guestbook._default" %>
源代码网推荐<HTML>
源代码网推荐<HEAD>
源代码网推荐<title>中国BS网留言簿</title>
源代码网推荐<HTML>
源代码网推荐<HEAD>
源代码网推荐<title>DataList分页</title>
源代码网推荐<meta name="GENERATOR" Content="Microsoft Visual Studio 7.0">
源代码网推荐<meta name="CODE_LANGUAGE" Content="C#">
源代码网推荐<meta name="vs_defaultClientscript" content="Javascript">
源代码网推荐</HEAD>
源代码网推荐<body MS_POSITIONING="GridLayout">
源代码网推荐<form method="post" action="default.aspx" runat="server" ID="Form1">
源代码网推荐<table width="100%" border="0" cellpadding="2" cellspacing="0" align="center">
源代码网推荐<tr>
源代码网推荐<td align="middle">
源代码网推荐<asp:DataList ID="Myguest" RepeatColumns="1" Runat="server">
源代码网推荐<ItemTemplate>
源代码网推荐<table class="gueststyleline" border="0" cellpadding="0" cellspacing="1" align="center" width="610">
源代码网推荐<tr>
源代码网推荐<td>
源代码网推荐<table class="gueststyleline" border="0" cellpadding="0" cellspacing="1" align="center" width="610">
源代码网推荐<tr>
源代码网推荐<td>
源代码网推荐<table width="100%" border="0" cellpadding="6" cellspacing="0" class="gueststylebg" align="center">
源代码网推荐<tr>
源代码网推荐<td width="112" align="center" height="153" valign="top">
源代码网推荐<table width="100%" border="0" cellspacing="0" cellpadding="0" height="100%" class="gueststylebg">
源代码网推荐<tr>
源代码网推荐<td>
源代码网推荐<table border="0" cellspacing="0" cellpadding="0" align="center" height="25">
源代码网推荐<tr>
源代码网推荐<td class="FILTER">
源代码网推荐<div align="center"><font style="LEFT: 0px; WIDTH: 100%; WORD-WRAP: break-word; 130; 0pt">http://www.zzchn.com/edu/20071103/<%# DataBinder.Eval(Container.DataItem,"name") %></font></div>
源代码网推荐</td>
源代码网推荐</tr>
源代码网推荐</table>
源代码网推荐<div align="center"><font style="LEFT: 0px; WIDTH: 100%; WORD-WRAP: break-word; 130; 0pt"><img src="http://www.zzchn.com/edu/20071103/<%# DataBinder.Eval(Container.DataItem,"face") %>" width="80" height="90" align="middle"></font><br>
源代码网推荐<br>
源代码网推荐
源代码网推荐http://www.zzchn.com/edu/20071103/<%# DataBinder.Eval(Container.DataItem,"sex") %>
源代码网推荐★</div>
源代码网推荐</td>
源代码网推荐</tr>
源代码网推荐</table>
源代码网推荐</td>
源代码网推荐<td align="center" height="153" width="2">
源代码网推荐<table class="gueststyleline" width="1" height="100%" border="0" cellpadding="0" cellspacing="0">
源代码网推荐<tr>
源代码网推荐<td width="1"></td>
源代码网推荐</tr>
源代码网推荐</table>
源代码网推荐</td>
源代码网推荐<td height="33" valign="top" width="463">
源代码网推荐<table width="100%" border="0" cellspacing="0" cellpadding="0" class="gueststylebg" style="TABLE-LAYOUT: fixed" height="20">
源代码网推荐<tr>
源代码网推荐<td height="14" width="310"><img src="http://www.host01.com/Get/Net/000200011/images/icon/subject.gif" width="15" height="15" alt="主题">:http://www.zzchn.com/edu/20071103/<%# DataBinder.Eval(Container.DataItem,"caption") %><br>
源代码网推荐</td>
源代码网推荐<td width="151" height="14"><font style="0pt"> &nbsp;<img src="http://www.host01.com/Get/Net/000200011/images/icon/posttime.gif" width="16" height="15" alt="发表时间[北京时间]">:http://www.zzchn.com/edu/20071103/<%# DataBinder.Eval(Container.DataItem,"postdate") %></font></td>
源代码网推荐</tr>
源代码网推荐</table>
源代码网推荐<hr class="gueststylehr" size="0.1" width="100%">
源代码网推荐<table width="100%" border="0" cellpadding="5" cellspacing="0" class="gueststylebg" height="45%" style="TABLE-LAYOUT: fixed">
源代码网推荐<tr>
源代码网推荐<td valign="top" width="28" align="center"><img src="http://www.host01.com/Get/Net/000200011/images/emot/1.gif" width="16" height="16">
源代码网推荐</td>
源代码网推荐<td valign="top" width="94%" style="LEFT: 0px; WIDTH: 100%; WORD-WRAP: break-word; 130; 0pt">
源代码网推荐http://www.zzchn.com/edu/20071103/<%# DataBinder.Eval(Container.DataItem,"content") %>
源代码网推荐</td>
源代码网推荐</tr>
源代码网推荐</table>
源代码网推荐<table width="100%" border="0" cellpadding="4" cellspacing="0">
源代码网推荐<tr>
源代码网推荐<td valign="top">
源代码网推荐<hr class="gueststylehr" size="0.1" width="100%">
源代码网推荐<a href="http://www.zzchn.com/edu/20071103/<%# DataBinder.Eval(Container.DataItem,"homepage") %>" target="_blank"><img src="http://www.host01.com/Get/Net/000200011/images/icon/home.gif" width="44" height="16"  border="0"></a>&nbsp;
源代码网推荐<a href="http://www.chinagz.net/ip/ipsearch.cgi?ip=http://www.zzchn.com/edu/20071103/<%# DataBinder.Eval(Container.DataItem,"ip") %>" target="_blank"><img src="http://www.host01.com/Get/Net/000200011/images/icon/ip.gif" align="absmiddle" height="16" border="0"></a>&nbsp;
源代码网推荐<a href="http://search.tencent.com/cgi-bin/friend/user_show_info?ln=http://www.zzchn.com/edu/20071103/<%# DataBinder.Eval(Container.DataItem,"qq") %>" target="_blank">
源代码网推荐<img src="http://www.host01.com/Get/Net/000200011/images/icon/qq.gif" border="0" width="35" height="16"></a>&nbsp;
源代码网推荐<a href="mailto:http://www.zzchn.com/edu/20071103/<%# DataBinder.Eval(Container.DataItem,"email") %>"><img src="http://www.host01.com/Get/Net/000200011/images/icon/email.gif" width="42" height="16" border="0" alt=""></a>&nbsp;
源代码网推荐<a href="javascript:;" onClick="MM_showHideLayers("admin","","hide","postcontent","","show")">
源代码网推荐<img src="http://www.host01.com/Get/Net/000200011/images/icon/postguest.gif" width="45" height="16" border="0"></a>
源代码网推荐</td>
源代码网推荐</tr>
源代码网推荐</table>
源代码网推荐</td>
源代码网推荐</tr>
源代码网推荐</table>
源代码网推荐</td>
源代码网推荐</tr>
源代码网推荐</table>
源代码网推荐</td>
源代码网推荐</tr>
源代码网推荐</table>
源代码网推荐</ItemTemplate>
源代码网推荐</asp:DataList>
源代码网推荐<BR>
源代码网推荐</td>
源代码网推荐</tr>
源代码网推荐</table>
源代码网推荐<table width="100%" border="0" cellspacing="0" cellpadding="2" align="center" height="9">
源代码网推荐<TBODY>
源代码网推荐<tr>
源代码网推荐<td align="middle">
源代码网推荐<table class="gueststyleline" width="610" border="0" cellpadding="1" cellspacing="0" height="18">
源代码网推荐<tr>
源代码网推荐<td height="24">
源代码网推荐<table width="100%" border="0" cellspacing="0" cellpadding="0" class="gueststylebg" height="18">
源代码网推荐<tr>
源代码网推荐<td width="35%" align="middle" height="36">
源代码网推荐共有<asp:Label id="lblRecordCount" ForeColor="red" runat="server" />条记录&nbsp; 当前为<asp:Label id="lblCurrentPage" ForeColor="red" runat="server" />/<asp:Label id="lblPageCount" ForeColor="red" runat="server" />页
源代码网推荐</td>
源代码网推荐<td align="middle" height="36">
源代码网推荐<asp:LinkButton id="lbnPrevPage" Text="上一页" CommandName="prev" runat="server" />
源代码网推荐<asp:LinkButton id="lbnNextPage" Text="下一页" CommandName="next" runat="server" />
源代码网推荐</td>
源代码网推荐</tr>
源代码网推荐</table>
源代码网推荐</td>
源代码网推荐</tr>
源代码网推荐</table>
源代码网推荐</td>
源代码网推荐</tr>
源代码网推荐</TBODY>
源代码网推荐</table>
源代码网推荐</form>
源代码网推荐</body>
源代码网推荐</HTML>
源代码网推荐
源代码网推荐
源代码网推荐
源代码网推荐注意:必须把两个LinkButton控件的Command事件改为Page_OnClick:
源代码网推荐
源代码网推荐
源代码网推荐
源代码网推荐codebehind文件:
源代码网推荐private void Page_Load(object sender, System.EventArgs e)
源代码网推荐{
源代码网推荐PageSize=1;
源代码网推荐Conn= new SqlConnection(Application["Guest_Conn"].ToString());
源代码网推荐Conn.Open();
源代码网推荐if(!Page.IsPostBack)
源代码网推荐{
源代码网推荐  ListBind();
源代码网推荐  CurrentPage = 0;
源代码网推荐  ViewState["PageIndex"] = 0;
源代码网推荐  //计算总共有多少记录
源代码网推荐  RecordCount = CalculateRecord();
源代码网推荐  lblRecordCount.Text = RecordCount.ToString();
源代码网推荐  //计算总共有多少页
源代码网推荐  PageCount = RecordCount/PageSize;
源代码网推荐  lblPageCount.Text = PageCount.ToString();
源代码网推荐  ViewState["PageCount"] = PageCount;
源代码网推荐}
源代码网推荐}
源代码网推荐
源代码网推荐
源代码网推荐
源代码网推荐//计算总共有多少条记录
源代码网推荐public int CalculateRecord()
源代码网推荐{
源代码网推荐int intCount;
源代码网推荐string strCount = "select count(*) as co from guest";
源代码网推荐SqlCommand MyComm = new SqlCommand (strCount,Conn);
源代码网推荐SqlDataReader dr = MyComm.ExecuteReader();
源代码网推荐if(dr.Read())
源代码网推荐{
源代码网推荐   intCount = Int32.Parse(dr["co"].ToString());
源代码网推荐}
源代码网推荐else
源代码网推荐{
源代码网推荐   intCount = 0;
源代码网推荐}
源代码网推荐dr.Close();
源代码网推荐return intCount;
源代码网推荐}
源代码网推荐
源代码网推荐
源代码网推荐
源代码网推荐ICollection CreateSource()
源代码网推荐{
源代码网推荐int StartIndex;
源代码网推荐//设定导入的起终地址
源代码网推荐StartIndex = CurrentPage*PageSize;
源代码网推荐string strSel = "Select * from guest order by postdate desc";
源代码网推荐DataSet ds = new DataSet();
源代码网推荐SqlDataAdapter MyAdapter = new SqlDataAdapter(strSel,Conn);
源代码网推荐MyAdapter.Fill(ds,StartIndex,PageSize,"guest");
源代码网推荐return ds.Tables["guest"].DefaultView;
源代码网推荐}
源代码网推荐
源代码网推荐
源代码网推荐
源代码网推荐public void ListBind()
源代码网推荐{
源代码网推荐Myguest.DataSource = CreateSource();
源代码网推荐Myguest.DataBind();
源代码网推荐lbnNextPage.Enabled = true;
源代码网推荐lbnPrevPage.Enabled = true;
源代码网推荐if(CurrentPage==(PageCount-1)) lbnNextPage.Enabled = false;
源代码网推荐if(CurrentPage==0) lbnPrevPage.Enabled = false;
源代码网推荐lblCurrentPage.Text = (CurrentPage+1).ToString();
源代码网推荐}
源代码网推荐
源代码网推荐
源代码网推荐
源代码网推荐public void Page_OnClick(Object sender,CommandEventArgs e)
源代码网推荐{
源代码网推荐CurrentPage = (int)ViewState["PageIndex"];
源代码网推荐PageCount = (int)ViewState["PageCount"];
源代码网推荐string cmd = e.CommandName;
源代码网推荐//判断cmd,以判定翻页方向
源代码网推荐switch(cmd)
源代码网推荐{
源代码网推荐  case "next":
源代码网推荐   if(CurrentPage<(PageCount-1)) CurrentPage++;
源代码网推荐   break;
源代码网推荐  case "prev":
源代码网推荐   if(CurrentPage>0) CurrentPage--;
源代码网推荐   break;
源代码网推荐}
源代码网推荐ViewState["PageIndex"] = CurrentPage;
源代码网推荐ListBind();
源代码网推荐}

源代码网供稿.
网友评论 (0)
会员中心
网络编程
本站推荐
网络编程之精华