分页时点击上一页(LinkButton2)出错“索引 -3 不是为负数,就是大于行数。”我是一特菜鸟,望人指点迷津~谢了
private void GridViewBind()
{
string Connstring = ConfigurationManager.ConnectionStrings["NewsConnectionString"].ConnectionString;
SqlConnection con = new SqlConnection(Connstring);
SqlDataAdapter sda = new SqlDataAdapter("select c.ClassID,c.NewsClass,c.NewsNum,c.ClassDescribe,c.ClassOrder,c.ItemID,i.ItemName from Class c left join Item i on c.ItemID=i.ItemID", con);
DataSet ds = new DataSet();
sda.Fill(ds, "Class");
int curPage = Convert.ToInt32(this.Label_CurrtenPage.Text);
PagedDataSource ps = new PagedDataSource();
ps.DataSource = ds.Tables["Class"].DefaultView;
ps.AllowPaging = true;
ps.PageSize = 3;
ps.CurrentPageIndex = curPage-1;
this.LinkButton2.Enabled = true;
this.LinkButton3.Enabled = true;
if (curPage == 1)
{
this.LinkButton2.Enabled = false;
}
if (curPage == ps.PageCount)
{
this.LinkButton3.Enabled = false;
}
this.GridView1.DataSource = ps;
this.GridView1.DataBind();
Label_CountPage.Text = (ps.PageCount).ToString();
DropDownList1.Items.Clear();
for (int i = 1; i < ps.PageCount + 1; i++)
{
DropDownList1.Items.Add(i.ToString());
}
DropDownList1.SelectedIndex = Convert.ToInt32(Label_CurrtenPage.Text) - 1;
}
protected void LinkButton1_Click(object sender, EventArgs e)
{
this.Label_CurrtenPage.Text = "1";
this.GridViewBind();
}
protected void LinkButton4_Click(object sender, EventArgs e)
{
this.Label_CurrtenPage.Text = Label_CountPage.Text;
this.GridViewBind();
}
protected void LinkButton2_Click(object sender, EventArgs e)
{
this.Label_CurrtenPage.Text = Convert.ToString(Convert.ToInt32(this.Label_CurrtenPage.Text) - 1);
this.GridViewBind();
}
protected void LinkButton3_Click(object sender, EventArgs e)
{
this.Label_CurrtenPage.Text = Convert.ToString(Convert.ToInt32(this.Label_CurrtenPage.Text) + 1);
this.GridViewBind();
}
protected void DropDownList1_SelectedIndexChanged(object sender, EventArgs e)
{
this.Label_CurrtenPage.Text = DropDownList1.SelectedItem.Text;
this.GridViewBind();
}