Diz-se que isso é de pouca utilidade, mas entender isso será útil para o datagri e o datalist, por isso farei anotações sobre minha carreira.
----------Lista de controle---------
Painel Painel1;
Botão Botão1;
Botão Botão2;
Rótulo Rótulo1;
Etiqueta Etiqueta2;
Etiqueta Etiqueta3;
Etiqueta Etiqueta4;
Etiqueta Etiqueta5;
Repetidor Repetidor1;
-----------------------.cs página ---------- --------------------------------
private void Page_Load (remetente do objeto, System.EventArgs e)
{
if(!this.IsPostBack)
{
this.Label1.Text="1";
this.fill();
}
}
preenchimento de vazio privado()
{
int pag=Convert.ToInt32(this.Label1.Text);//Define a página atual
SqlConnection con=new SqlConnection("server=.;database=Northwind;uid=sa;pwd=980123;");//instancia a conexão
SqlDataAdapter sda=new SqlDataAdapter();//Cria um objeto adaptador de dados
sda.SelectCommand=new SqlCommand("select * from Employees",con);//Instancia o SelectCommand e usa-o para ler todos os dados do banco de dados
DataSet ds=new DataSet();//Define um conjunto de dados para preencher
sda.Fill(ds,"name");//Use o adaptador para preencher o conjunto de dados na tabela local "name"
PagedDataSource ps=new PagedDataSource();//Instancia um PagedDataSource, que é originalmente encapsulado em DATAGRID
ps.DataSource=ds.Tables["name"].DefaultView;//Defina sua fonte de dados como ds.Tables["name"].DefaultView visualização de dados
ps.AllowPaging=true;//Permitir paginação
ps.PageSize=3;//Número de exibições por página
ps.CurrentPageIndex=pag-1;//O número da página atual, porque a página começa em 0, então precisa ser reduzida em 1
this.Button1.Enabled=true;//Status atual do botão
this.Button2.Enabled=true;
this.Label5.Text=ps.PageCount.ToString();
if(pag==1)
{
this.Button1.Enabled=false;//Se a página atual for 1, o botão da página anterior não estará disponível
}
if(pag==ps.PageCount)
{
this.Button2.Enabled=false;//Se a página atual for a última página, o botão da próxima página não estará disponível
}
this.Repeater1.DataSource=ps;
this.Repeater1.DataBind();
}
código do formulário
private void Button2_Click (remetente do objeto, System.EventArgs e)
{
this.Label1.Text=((Convert.ToInt32(this.Label1.Text))+1).ToString();
this.fill();
}
private void Button1_Click(objeto remetente, System.EventArgs e)
{
this.Label1.Text=((Convert.ToInt32(this.Label1.Text))-1).ToString();
this.fill();
}