datalist 分页 使用的是C#我在页面文件直接用datalist+sqlDataSource 绑定了一个5列多行的据这样我想在下面实现分页显示.比如每页显示5行5列.这样要怎么写? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 <asp:DataList ID="ImgNews" runat="server" Width="99%" RepeatColumns="4"> <ItemStyle VerticalAlign="Top" HorizontalAlign="center"></ItemStyle> <ItemTemplate> <table border="0" cellspacing="0" cellpadding="0"> <tr> <td valign="top"> <table border="0" cellspacing="0" cellpadding="0"> <tr> <td valign="middle" align="center" class="3photobg"> <table border="0" cellspacing="0" cellpadding="0"> <tr> <td align="center" valign="middle"> <img src='../DownloadFiles/article/<%# Eval("FalseFileName").ToString() %>' width="160" height="120" border="0" /> </td> </tr> </table> </td> </tr> <tr> <td height="35" valign="top" align="center" class="maintext"> <%#mystore.CutString(Eval("Title").ToString(), 80)%> </td> </tr> </table> </td> <td width="12"> </td> </tr> </table> </ItemTemplate> </asp:DataList> 如果你的数据源是5列,用5个td绑如果你的数据源是1列,用RepeatColumns="5"就变成5列了。 datalist好像不支持自动分页,datagrid(gridview)支持。如果你用datalist,或者repeater,可以自己写分页,也可以在网上找一下这方面的控件。分页是比较重要的一个技术点,把它弄懂,你就学会了不少东西。 使用PagedDataSourcePagedDataSource 类的部分公共属性: AllowCustomPaging 获取或设置指示是否启用自定义分页的值。 AllowPaging 获取或设置指示是否启用分页的值。 Count 获取要从数据源使用的项数。 CurrentPageIndex 获取或设置当前页的索引。 DataSource 获取或设置数据源。 DataSourceCount 获取数据源中的项数。 FirstIndexInPage 获取页中的第一个索引。 IsCustomPagingEnabled 获取一个值,该值指示是否启用自定义分页。 IsFirstPage 获取一个值,该值指示当前页是否是首页。 IsLastPage 获取一个值,该值指示当前页是否是最后一页。 IsPagingEnabled 获取一个值,该值指示是否启用分页。 IsReadOnly 获取一个值,该值指示数据源是否是只读的。 IsSynchronized 获取一个值,该值指示是否同步对数据源的访问(线程安全)。 PageCount 获取显示数据源中的所有项所需要的总页数。 PageSize 获取或设置要在单页上显示的项数。 VirtualCount 获取或设置在使用自定义分页时数据源中的实际项数。 public void Page_Load(Object src,EventArgs e) { OleDbConnection objConn=new OleDbConnection(@"Provider=Microsoft.Jet.OLEDB.4.0; Data Source=c:\test.mdb"); OleDbDataAdapter objCommand=new OleDbDataAdapter("select * from Users",objConn); DataSet ds=new DataSet(); objCommand.Fill(ds); //对PagedDataSource 对象的相关属性赋值 PagedDataSource objPds = new PagedDataSource(); objPds.DataSource = ds.Tables[0].DefaultView; objPds.AllowPaging = true; objPds.PageSize = 5; int CurPage; //当前页面从Page查询参数获取 if (Request.QueryString["Page"] != null) CurPage=Convert.ToInt32(Request.QueryString["Page"]); else CurPage=1; objPds.CurrentPageIndex = CurPage-1; lblCurrentPage.Text = "Page: " + CurPage.ToString(); if (!objPds.IsFirstPage) lnkPrev.NavigateUrl=Request.CurrentExecutionFilePath + "?Page=" + Convert.ToString(CurPage-1); if (!objPds.IsLastPage) lnkNext.NavigateUrl=Request.CurrentExecutionFilePath+ "?Page=" + Convert.ToString(CurPage+1); //把PagedDataSource 对象赋给DataList控件 DataList1.DataSource=objPds; DataList1.DataBind(); } 一台服务器只能支持一个域名的泛解析吗? 三层结构跨层调用是否符合规范?有什么坏处 获取HTML控件的值问题 我现在研究网上如何付款的技术,使用什么产品(或技术)比较合适面对全球? 如何消除asp.NET控件中的VALUE值? <meta />元素是放在body里面还是放在head里面? 请高手帮解答一下DataReapeater服务器控件的问题 加急!!!有关ASP.NET中改新数据库的一些问题,江湖救急,在线关注,谢了! 华为的MT800如何映射端口? 急救:关于搜索的问题 如何将数千个pdf文件存(导)入sql2005数据库,然后再读出来? 熟悉web安装项目的请进
<asp:DataList ID="ImgNews" runat="server" Width="99%" RepeatColumns="4">
<ItemStyle VerticalAlign="Top" HorizontalAlign="center"></ItemStyle>
<ItemTemplate>
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td valign="top">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td valign="middle" align="center" class="3photobg">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td align="center" valign="middle">
<img src='../DownloadFiles/article/<%# Eval("FalseFileName").ToString() %>'
width="160" height="120" border="0" />
</td>
</tr>
</table>
</td>
</tr>
<tr>
<td height="35" valign="top" align="center" class="maintext">
<%#mystore.CutString(Eval("Title").ToString(), 80)%>
</td>
</tr>
</table>
</td>
<td width="12">
</td>
</tr>
</table>
</ItemTemplate>
</asp:DataList>
如果你的数据源是1列,用RepeatColumns="5"就变成5列了。
AllowCustomPaging 获取或设置指示是否启用自定义分页的值。
AllowPaging 获取或设置指示是否启用分页的值。
Count 获取要从数据源使用的项数。
CurrentPageIndex 获取或设置当前页的索引。
DataSource 获取或设置数据源。
DataSourceCount 获取数据源中的项数。
FirstIndexInPage 获取页中的第一个索引。
IsCustomPagingEnabled 获取一个值,该值指示是否启用自定义分页。
IsFirstPage 获取一个值,该值指示当前页是否是首页。
IsLastPage 获取一个值,该值指示当前页是否是最后一页。
IsPagingEnabled 获取一个值,该值指示是否启用分页。
IsReadOnly 获取一个值,该值指示数据源是否是只读的。
IsSynchronized 获取一个值,该值指示是否同步对数据源的访问(线程安全)。
PageCount 获取显示数据源中的所有项所需要的总页数。
PageSize 获取或设置要在单页上显示的项数。
VirtualCount 获取或设置在使用自定义分页时数据源中的实际项数。
public void Page_Load(Object src,EventArgs e)
{
OleDbConnection objConn=new OleDbConnection(@"Provider=Microsoft.Jet.OLEDB.4.0; Data Source=c:\test.mdb");
OleDbDataAdapter objCommand=new OleDbDataAdapter("select * from Users",objConn);
DataSet ds=new DataSet();
objCommand.Fill(ds); //对PagedDataSource 对象的相关属性赋值
PagedDataSource objPds = new PagedDataSource();
objPds.DataSource = ds.Tables[0].DefaultView;
objPds.AllowPaging = true;
objPds.PageSize = 5;
int CurPage; //当前页面从Page查询参数获取
if (Request.QueryString["Page"] != null)
CurPage=Convert.ToInt32(Request.QueryString["Page"]);
else
CurPage=1; objPds.CurrentPageIndex = CurPage-1;
lblCurrentPage.Text = "Page: " + CurPage.ToString(); if (!objPds.IsFirstPage)
lnkPrev.NavigateUrl=Request.CurrentExecutionFilePath + "?Page=" + Convert.ToString(CurPage-1); if (!objPds.IsLastPage)
lnkNext.NavigateUrl=Request.CurrentExecutionFilePath+ "?Page=" + Convert.ToString(CurPage+1); //把PagedDataSource 对象赋给DataList控件
DataList1.DataSource=objPds;
DataList1.DataBind();
}