gridview分页后为什么到第十页索引超出范围。必须为非负值并小于集合大小。参数名: index
后台:protectedvoidPage_Load(objectsender,EventArgse){GridView1.DataSource=SysUserServic...
后台:
protected void Page_Load(object sender, EventArgs e)
{
GridView1.DataSource = SysUserService.GetAllUser();
GridView1.DataBind();
}
protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e)
{
this.GridView1.PageIndex = e.NewPageIndex;
GridView1.DataSource = SysUserService.GetAllUser();
GridView1.DataBind();
}
protected void GridView1_RowCreated(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
LinkButton LinkButton1 = (LinkButton)e.Row.FindControl("LinkButton1");
LinkButton1.CommandArgument = e.Row.RowIndex.ToString();
}
}
protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e)
{
GridView1.DataKeys[Convert.ToInt32(e.CommandArgument)][0].ToString();
}
就是GridView1.DataKeys[Convert.ToInt32(e.CommandArgument)][0].ToString();这句话报错~!请各位大侠指点~
我不加GridView1.DataKeys[Convert.ToInt32(e.CommandArgument)][0].ToString();这句话第十页,11页,12页后面的都能显示。一加上,第10页以后的都显示不了。一楼你那三篇文章没解决我的问题。PageSize设置多少,就只能显示多少页。后面的就会在 GridView1.DataKeys[Convert.ToInt32(e.CommandArgument)][0].ToString();这句话上报错。索引超出范围! 展开
protected void Page_Load(object sender, EventArgs e)
{
GridView1.DataSource = SysUserService.GetAllUser();
GridView1.DataBind();
}
protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e)
{
this.GridView1.PageIndex = e.NewPageIndex;
GridView1.DataSource = SysUserService.GetAllUser();
GridView1.DataBind();
}
protected void GridView1_RowCreated(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
LinkButton LinkButton1 = (LinkButton)e.Row.FindControl("LinkButton1");
LinkButton1.CommandArgument = e.Row.RowIndex.ToString();
}
}
protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e)
{
GridView1.DataKeys[Convert.ToInt32(e.CommandArgument)][0].ToString();
}
就是GridView1.DataKeys[Convert.ToInt32(e.CommandArgument)][0].ToString();这句话报错~!请各位大侠指点~
我不加GridView1.DataKeys[Convert.ToInt32(e.CommandArgument)][0].ToString();这句话第十页,11页,12页后面的都能显示。一加上,第10页以后的都显示不了。一楼你那三篇文章没解决我的问题。PageSize设置多少,就只能显示多少页。后面的就会在 GridView1.DataKeys[Convert.ToInt32(e.CommandArgument)][0].ToString();这句话上报错。索引超出范围! 展开
3个回答
展开全部
这个事件在你的页索引发生变化时会触发.
假如你一页有5条记录,而你的数据库中有12条的话,这时它会自动分成3页,运行后就显示前5条的,当你点击下一页的时候,就显示后五条的,依次类推...明白吗?
我可以帮助你,你先设置我最佳答案后,我百度Hii教你。
假如你一页有5条记录,而你的数据库中有12条的话,这时它会自动分成3页,运行后就显示前5条的,当你点击下一页的时候,就显示后五条的,依次类推...明白吗?
我可以帮助你,你先设置我最佳答案后,我百度Hii教你。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
99%是!IsPostBack 问题 你在page_Load中加上if(!IsPostBack)试试 应该就没有问题了,
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询