SqlConnection scon=new SqlConnection("server=localhost;database=northwind;uid=sa;pwd=sa");
SqlDataAdapter sDA;
DataSet ds;
int currentPage;
int maxPage;
const int rowCount = 3;
int rowSum;
private void BindData()
{
Repeater1.DataSource = ds;
Repeater1.DataBind();
lblIndex.Text = currentPage.ToString();
}
private void readpage(int n)
{
sDA = new SqlDataAdapter("select employeeid, lastname from employees order by employeeid", scon);
ds = new DataSet();
ds.Clear();
sDA.Fill(ds, (n - 1) * rowCount,rowCount, "employees");
}
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
sDA = new SqlDataAdapter("select employeeid, lastname from employees order by employeeid", scon);
ds = new DataSet();
try
{
sDA.Fill(ds, "employees");
rowSum = ds.Tables[0].Rows.Count;
}
catch (Exception ex)
{
rowSum = 0;
return;
}
if (rowSum % rowCount > 0)
{
maxPage = rowSum / rowCount + 1;
}
else
{
maxPage = rowSum / rowCount;
}
currentPage = 1;
readpage(currentPage);
BindData();
lblTotal.Text = maxPage.ToString();
btnStart.Enabled = false;
btnBack.Enabled = false;
}
}
protected void btnStart_Click(object sender, EventArgs e)
{
currentPage = 1;
readpage(currentPage);
BindData();
btnStart.Enabled = false;
btnBack.Enabled = false;
btnGo.Enabled = true;
btnEnd.Enabled = true;
}
protected void btnBack_Click(object sender, EventArgs e)
{
if (Convert.ToInt32(lblIndex.Text) > 2)
{
btnGo.Enabled = true;
btnEnd.Enabled = true;
}
else
{
btnStart.Enabled = false;
btnBack.Enabled = false;
btnGo.Enabled = true;
btnEnd.Enabled = true;
}
currentPage = Convert.ToInt32(lblIndex.Text) - 1;
readpage(currentPage);
BindData();
}
protected void btnGo_Click(object sender, EventArgs e)
{
if (Convert.ToInt32(lblIndex.Text) < Convert.ToInt32(lblTotal.Text) - 1)
{
btnStart.Enabled = true;
btnBack.Enabled = true;
}
else
{
btnStart.Enabled = true;
btnBack.Enabled = true;
btnGo.Enabled = false;
btnEnd.Enabled = false;
}
currentPage = Convert.ToInt32(lblIndex.Text) + 1;
readpage(currentPage);
BindData();
}
protected void btnEnd_Click(object sender, EventArgs e)
{
currentPage = Convert.ToInt32(lblTotal.Text);
readpage(currentPage);
BindData();
btnStart.Enabled = true;
btnBack.Enabled = true;
btnGo.Enabled = false;
btnEnd.Enabled = false;
}
}