`
pavel
  • 浏览: 928341 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Repeater分页显示

阅读更多

简单的说,先从控件工具箱中拖入两个label(currten page当前页,count page总页),四个linkbuttion(首/下页/上页/尾页)。
无非就是+1 -1 的问题,
------------------------
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Data.SqlClient;

public partial class gonggao : System.Web.UI.UserControl
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
this.labPage.Text = "1";
this.contrlRepeater();
}
}
//获取指字符个数的字符
public string cuts(string aa,int bb)
{
if (aa.Length <= bb) { return aa; }
else { return aa.Substring(0, bb); }
}


//Repeater分页控制显示方法
public void contrlRepeater()
{
pb pb1 = new pb();
DataSet ss = new DataSet();
ss = pb1.returnDs("select top 200 [标题],[时间] from news");
PagedDataSource pds = new PagedDataSource();
pds.DataSource = ss.Tables["temptable"].DefaultView;
pds.AllowPaging = true;
pds.PageSize = 2;
pds.CurrentPageIndex = Convert.ToInt32(this.labPage.Text) - 1;
Repeater1.DataSource = pds;
LabCountPage.Text = pds.PageCount.ToString();
labPage.Text = (pds.CurrentPageIndex + 1).ToString();
this.lbtnpritPage.Enabled = true;
this.lbtnFirstPage.Enabled = true;
this.lbtnNextPage.Enabled = true;
this.lbtnDownPage.Enabled = true;
if(pds.CurrentPageIndex<1)
{
this.lbtnpritPage.Enabled = false;
this.lbtnFirstPage.Enabled = false;
}
if (pds.CurrentPageIndex == pds.PageCount-1)
{
this.lbtnNextPage.Enabled = false;
this.lbtnDownPage.Enabled = false;
}
Repeater1.DataBind();
}
protected void lbtnpritPage_Click(object sender, EventArgs e)
{
this.labPage.Text = Convert.ToString(Convert.ToInt32(labPage.Text) - 1);
this.contrlRepeater();
}
protected void lbtnFirstPage_Click(object sender, EventArgs e)
{
this.labPage.Text = "1";
this.contrlRepeater();
}
protected void lbtnDownPage_Click(object sender, EventArgs e)
{
this.labPage.Text =this.LabCountPage.Text;
this.contrlRepeater();
}

protected void lbtnNextPage_Click(object sender, EventArgs e)
{
this.labPage.Text = Convert.ToString(Convert.ToInt32(labPage.Text) + 1);
this.contrlRepeater();
}
}
--------------------------------------------------------
aspx文件:
<%@ Control Language="C#" AutoEventWireup="true" CodeFile="gonggao.ascx.cs" Inherits="gonggao" %>
<table>
<asp:Repeater ID="Repeater1" runat="server">
<ItemTemplate>
<tr><td><a href=""><%# cuts(DataBinder.Eval(Container.DataItem,"[标题]").ToString(),8)%></a></td>
<td><a href=""><%# cuts(DataBinder.Eval(Container.DataItem,"[时间]").ToString(),5)%></a></td></tr>
</ItemTemplate>
</asp:Repeater>
</table>
<table border="1"><tr><td align="center">
<asp:LinkButton ID="lbtnFirstPage" runat="server" OnClick="lbtnFirstPage_Click">页首</asp:LinkButton>
<asp:LinkButton ID="lbtnpritPage" runat="server" OnClick="lbtnpritPage_Click">上一页</asp:LinkButton>
<asp:LinkButton ID="lbtnNextPage" runat="server" OnClick="lbtnNextPage_Click">下一页</asp:LinkButton>
<asp:LinkButton ID="lbtnDownPage" runat="server" OnClick="lbtnDownPage_Click">页尾</asp:LinkButton><br />
第<asp:Label ID="labPage" runat="server" Text="Label"></asp:Label>页/共<asp:Label ID="LabCountPage" runat="server" Text="Label"></asp:Label>页 跳至<asp:DropDownList
ID="DropDownList1" runat="server">
</asp:DropDownList>
</td></tr>
</table>


附:pb.returnDs(根据SQL语句返回dataSet数据集.temptable表)
public DataSet returnDs(string sqlStr)
{

DataSet ds = new DataSet();
try
{
//conn.Open();
SqlCommand comm = new SqlCommand(sqlStr, conn);
comm.CommandTimeout = 20;
this.conn.Open();
SqlDataAdapter sda = new SqlDataAdapter(comm);
sda.Fill(ds, "temptable");
return ds;
conn.Close(); conn.Dispose(); comm.Dispose();

}
catch (Exception e)
{
throw (e);
// ds = null;
return ds;
}
finally
{
this.conn.Close();
}

}

分享到:
评论

相关推荐

    Repeater 分页

    本文将深入探讨`Repeater`控件的分页功能,以及如何在实际项目中实现这一功能。 一、Repeater控件基础 `Repeater`控件是一个高度可定制的控件,它允许开发者自定义模板来显示数据源中的每一项。通过ItemTemplate、...

    Repeater数据显示及分页

    虽然`Repeater`控件本身不支持内置的分页功能,但我们可以通过编写自定义逻辑来实现。以下是一个基本的分页实现步骤: 1. **计算总页数**:根据数据源的大小和每页显示的记录数计算总页数。 2. **创建分页导航条**...

    repeater控件分页 C#.Net实例代码

    这看起来是一个Access数据库文件,很可能用于存储要分页显示的数据。在实例中,可能是通过ADO.NET连接并查询这个数据库来获取数据的。 实现上述功能的步骤大致包括: - 连接数据库并执行分页查询,获取当前页的...

    可用的完整的repeater分页实现

    通过以上知识点的梳理,我们不仅了解了如何使用 ASP.NET 中的 Repeater 控件结合 PagedDataSource 实现数据的分页显示,还深入探讨了其中涉及的关键技术和代码实现细节。这对于初学者来说是非常宝贵的资源,有助于更...

    repeater分页代码(直接可用)

    本篇将详细讲解如何实现`Repeater`控件的分页功能。 首先,我们要理解`Repeater`控件的工作原理。`Repeater`不像`GridView`或`DataList`那样内置了分页功能,所以需要我们自己编写代码来实现。在给定的示例中,主要...

    repeater 分页 的自定义控件

    对于`Repeater`控件,由于其本身不支持内置的分页功能,我们需要自己实现这一功能。 ### 自定义分页实现 1. **数据获取与绑定**:首先,我们需要在后端获取数据,通常使用`SqlDataSource`、`EntityDataSource`或...

    DataList分页与排序Repeater分页

    Repeater的分页需要自己处理数据源的分页逻辑,如查询数据库时添加分页条件。排序则通常通过在后台代码中对数据源进行排序,然后再绑定到Repeater。 在.NET中,数据访问层(DAL)和业务逻辑层(BLL)的设计模式也...

    repeater实现分页

    通过这种方式,即使`Repeater`控件不内置分页功能,我们也可以利用`PagedDataSource`的灵活性和强大的分页特性来实现分页显示。这样做的好处是,我们可以保留`Repeater`的自定义布局能力,同时享受到分页带来的用户...

    功能非常好自主研发的自定义Repeater分页控件

    功能非常好自主研发的自定义Repeater分页控件,包括目前较为流行的20多种...Repeater与分页离显示的分页控件,树形控件,文件夹文件选择器控件等等,几乎包括Web方面能用到的所有控件,还等什么,赶快联系我吧QQ:42383239

    实现repeater控件分页

    - 假设我们已经有一个名为`dt`的`DataTable`对象,其中包含了需要分页显示的数据。 2. **创建PagedDataSource实例**: ```csharp PagedDataSource pds = new PagedDataSource(); ``` 3. **设置数据源和分页...

    web_repeater分页

    "web_repeater分页"是指在Web应用中使用特定组件(如Repeater)实现的分页功能。下面我们将深入探讨这个主题,包括分页的基本概念、Repeater控件的使用以及如何结合分页实现高效的数据展示。 1. **分页基础** - **...

    自己整理了一个repeater嵌套和分页的实例

    本实例主要探讨了如何在实际应用中使用`Repeater`进行嵌套以及添加分页功能,这对于理解和掌握动态数据展示的技巧至关重要。 首先,我们来看`Repeater`的基本用法。`Repeater`控件没有固定的UI模板,而是通过`...

    Repeater无刷新分页

    // 更新Repeater的数据源并重新绑定 rptData.DataSource = data.Items; rptData.DataBind(); // 更新当前页和总页数信息 $("#currentPage").val(currentPage); $("#totalPages").val(data.TotalPages); } })...

    使用AspNetPager对Repeater控件分页简单小例

    在代码-behind文件中,我们需要处理Repeater的ItemDataBound事件,以便在数据绑定时正确显示当前页的数据。同时,需要处理AspNetPager的PageChanging事件,当用户点击分页按钮时,根据新的页码重新加载数据并重新...

    c# repeater 分页数据 源文件

    这个标题"“c# repeater 分页数据 源文件”"表明我们将讨论如何利用C#和Repeater控件实现分页显示数据,而描述中提到的“包中有源文件”,意味着我们可以从实际代码中学习这种方法。 首先,了解Repeater的基本概念...

    重写Repeater带分页

    `Repeater`控件通过模板来显示数据,不提供内置的分页和排序功能。这意味着我们需要自己处理数据源的分页逻辑,通常是在后端数据库查询中完成,或者在数据访问层(DAL)实现。 标题"重写Repeater带分页"指的是我们...

    Repeater控件实现分页代码

    在本示例中,Repeater控件被用来实现分页功能,使得大量数据可以按页显示,提高用户体验。下面将详细解释如何使用Repeater控件来实现分页。 首先,我们需要在Web.config文件中配置数据库连接字符串。在给出的代码...

    asp.net装载页面进度条以及Repeater分页

    在ASP.NET中,为了提升...同时,Repeater控件配合分页控件如PagerControl,可以实现动态数据的分页显示,使大量数据的浏览变得更为便捷。在实际项目中,可以根据需求调整这些组件的样式和功能,以适应各种应用场景。

    Repeater分页

    在C#代码部分,我们没有看到具体的分页逻辑实现,但可以预见的是,这部分代码应该包含了数据库连接、数据查询(带分页参数)、数据集创建以及`Repeater`控件的数据绑定过程。 #### 六、总结 通过以上分析,我们...

Global site tag (gtag.js) - Google Analytics