C#asp.net中DataGridView控件的分页问题

利用vs2010结合access数据库开发时遇到了一个问题,用到这个DataGridView控件。使用时想打开控件自身带的分页功能,所以把allowPaging这一项改成... 利用vs2010结合access数据库开发时遇到了一个问题,
用到这个DataGridView控件。使用时想打开控件自身带的分页功能,所以把allowPaging这一项改成了True,每页记录数设置为5.这样数据库中有20条记录,也就是能分4页显示,但是呢,现在有个问题,分开之后,每次单击那个控件自身分页时的那个下一页按钮,就会提示错误,错误信息是:GridView激发了未处理的事件“PageIndexChanging”。
从网上查到了资料,解决方案是添加GridView的PageIndex_changing事件。我添加上了,事件代码是这样的:
protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e)
{
GridView1.PageIndex = e.NewPageIndex;
DataBind();
}
但是我现在呢 我每次单击之后,都是页面刷新了,但是没有显示GridVIew控件,
就是没有跳转到下一个分页。
我想问的是怎么让它单击控件自身的下一页按钮的时候,就自己跳转到下一个分页呢?~
请大神帮忙指示解决方案。越详细越好。
展开
 我来答
haicahyige
2010-11-25
知道答主
回答量:9
采纳率:0%
帮助的人:0
展开全部
aspx中的GV中加入下面这些:
<PagerTemplate>
<asp:LinkButton ID="LinkButton1" runat="server" CommandArgument="First" OnClick="Page_Click" CommandName="Pageing" Text="首页" ></asp:LinkButton>
<asp:LinkButton ID="LinkButton3" runat="server" CommandArgument="Prev" OnClick="Page_Click" Text="上一页"></asp:LinkButton>
<asp:LinkButton ID="LinkButton2" runat="server" CommandArgument="Next" OnClick="Page_Click">下一页</asp:LinkButton>
<asp:LinkButton ID="LinkButton4" runat="server" CommandArgument="Last" OnClick="Page_Click" >最后页</asp:LinkButton>
</PagerTemplate>

然后cs中相应事件:
protected void Page_Click(object sender, EventArgs e)
{
string cmdArg = ((LinkButton)sender).CommandArgument;

switch (cmdArg)
{
case "First":
GridView1.PageIndex = 0;
break;
case "Prev":
GridView1.PageIndex = (int)Math.Max(0, GridView1.PageIndex - 1);
break;
case "Next":
GridView1.PageIndex = (int)Math.Min(GridView1.PageCount-1, GridView1.PageIndex+1 );
break;
case "Last":
GridView1.PageIndex = GridView1.PageCount - 1;
break;

}
bindToDG1(); //绑定数据库的操作

}

就是全部核心代码了,不懂的问我。
zb_best888
2010-11-25
知道答主
回答量:23
采纳率:0%
帮助的人:0
展开全部
protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e)
{
GridView1.PageIndex = e.NewPageIndex;
//DataBind(); 把这句去掉
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
五斗米七里香
2010-11-25 · 超过34用户采纳过TA的回答
知道答主
回答量:80
采纳率:0%
帮助的人:82.2万
展开全部
写一个绑定函数
Private void TestBind(int pageindex)
{
//连接数据库
Gridview1.DataSource=dt;
GridView1.PageIndex=pageindex;
GridView1.DataBind();
}
在PageIndexChanging事件中加入
TestBind(e.NewPageIndex)即可
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友6fcf293
2010-11-26 · TA获得超过2万个赞
知道大有可为答主
回答量:1.9万
采纳率:66%
帮助的人:4409万
展开全部
DataList不是自己就会分页的吗?

搞不定去下一个分页控件好了,主要是一两句话搞不定
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
jslfv15
2010-11-28 · TA获得超过215个赞
知道答主
回答量:262
采纳率:0%
帮助的人:197万
展开全部
DataList不是自己就会分页的吗?

搞不定去下一个分页控件好了,主要是一两句话搞不定
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式