asp.net中gridview自动翻页如何实现?

 我来答
︶ㄣズ瀟兲雨
2010-12-11 · 超过16用户采纳过TA的回答
知道答主
回答量:65
采纳率:0%
帮助的人:0
展开全部

<PagerTemplate>

                    <table width="100%" style="font-size: 12px;">

                        <tr>

                            <td style="text-align: right">

                                <%#((GridView)Container.NamingContainer).PageIndex+1 %>

                                /

                                <%#((GridView)Container.NamingContainer).PageCount %>

                                <asp:LinkButton ID="LinkButtonFirstPage" runat="server" CommandArgument="First" CommandName="Page"

                                    Enable="<%#((GridView)Container.NamingContainer).PageIndex!=0 %>">首页</asp:LinkButton>

                                <asp:LinkButton ID="LinkButtonPreviousPage" runat="server" CommandArgument="prev"

                                    CommandName="Page" Enable="<%#((GridView)Container.NamingContainer).PageIndex!=0 %>">上一页</asp:LinkButton>

                                <asp:LinkButton ID="LinkButtonNextPage" runat="server" CommandArgument="Next" CommandName="Page"

                                    Enable="<%#((GridView)Container.NamingContainer).PageIndex!=((GridView)Container.NamingContainer).PageCount-1 %>">下一页</asp:LinkButton>

                                <asp:LinkButton ID="LinkButtonLastPage" runat="server" CommandArgument="Last" CommandName="Page"

                                    Enable="<%#((GridView)Container.NamingContainer).PageIndex!=((GridView)Container.NamingContainer).PageCount-1 %>">尾页</asp:LinkButton>

                            </td>

                        </tr>

                    </table>

                </PagerTemplate>

注意:这段代码要放在GridView的里面   </Columns>的后面    分页功能必须开启也就是ALLOWPAGING属性为true      我这段代码,就直接复制粘贴就可以用了,不比改动如何代码,

原听然015
推荐于2016-09-01 · TA获得超过2415个赞
知道小有建树答主
回答量:1390
采纳率:100%
帮助的人:1139万
展开全部
要实现GrdView分页的功能。
操作如下:
1、更改GrdView控件的AllowPaging属性为true。
2、更改GrdView控件的PageSize属性为 任意数值(默认为10)
3、更改GrdView控件的PageSetting->Mode为Numeric等(默认为Numeric)该属性为分页样式。
GridView属性设置好了,从页面上也能看到分页样式。

现在开始实现分页的功能:
1、在<<asp:GridView ID=......>后添加,OnPageIndexChanging="GridView1_PageIndexChanging"
2、在对应的aspx.cs中添加:
protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e)
{
GridView1.PageIndex = e.NewPageIndex;
InitPage(); //重新绑定GridView数据的函数
}
3、
GridView1.PageIndex = e.NewPageIndex;
完了之后再重新绑定一下GridView。
如果要自己跑,就要其它加点东东了
private bool 是否自动翻页
{
get { object x = ViewState["是否自动翻页"]; return x != null && (bool)x; }
set { ViewState["是否自动翻页"] = value; 自动翻页页号 = 1; }
}
private int 自动翻页页号
{
get { object x = ViewState["自动翻页页号"]; return x == null ? 0 : (int)x; }
set { ViewState["自动翻页页号"] = value; }
}

private int 自动翻页截止页号
{
get { object x = ViewState["自动翻页截止页号"]; return x == null ? 0 : (int)x; }
set { ViewState["自动翻页截止页号"] = value; }
}

protected override void RenderChildren(HtmlTextWriter writer)
{
if (是否自动翻页)
{
this.Page.ClientScript.RegisterStartupScript(this.GetType(), "自动翻页", "setTimeout('" +
this.Page.ClientScript.GetPostBackEventReference(this.GridView1, "Page$" + 自动翻页页号.ToString(), true).Replace("'", "\\'") +
"',3000);", true);
}
base.RenderChildren(writer);
}

protected void Page_PreRender(object sender, EventArgs e)
{
if (是否自动翻页)
if (自动翻页页号 < 自动翻页截止页号)
自动翻页页号++;
else
是否自动翻页 = false;
}

protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
是否自动翻页 = true; //这里只是演示。实际上不一定放在Page_Load中,在任何事件中设置此参数,都会开始自动翻页动作。
自动翻页截止页号 = 100;
}
}
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式