Muitas vezes precisamos de listagens cada vez mais customizadas, o que inviabiliza a utilização do gridView, para o mesmo normalmente necessitamos utilizar o Repeater.
Porém o Repeater não possui uma paginação pronta como o GridView.
Nesse código implemento uma paginação customizada para o Repeater por Próximo, Anterior e também por numeração.
Ps: No exemplo eu utilizei uma lista de objetos preenchidos em um laço de repetição. A ideia é preencher uma lista de objetos com o seu Dataset por exemplo ou DataReader.
-----------------Default.aspx----------------------------------------Default.aspx.cs -------------------- 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.Collections.Generic; public partial class _Default : System.Web.UI.Page { //Instancia o objeto de paginação PagedDataSource pgds = new PagedDataSource(); // Seta o numero total de paginas que serão exibidas na paginação int numeropaginas = 7; //Inicia em 3 para a primeira pagina, representa a diferença entre a numeração das paginas int numerop = 3; protected void Page_Load(object sender, EventArgs e) { if (!Page.IsPostBack) { //grava no ViewState pagina a primeira pagina da paginação e o numero total de paginas ViewState["pagina"] = 0; ViewState["numeropaginas"] = numeropaginas; } FillDados(); } private void FillDados() { // Preenche uma lista de objetos para servirem de dataSource do nosso repeater. //(Essa lista de objetos pode ser consumida por um dataset por exemplo) List