网上总结到的GridView自定义分页

    技术2022-05-20  34

    前台代码:

             <asp:GridView ID="gvUserInfo" runat="server" AllowPaging="True"                 AutoGenerateColumns="False" onpageindexchanging="gvUserInfo_PageIndexChanging"                 onrowdeleting="gvUserInfo_RowDeleting" DataKeyNames="UserId" PageSize="5"                     Width="650px">                <HeaderStyle BackColor="#E7E7E7" />                <PagerStyle BackColor="#E7E7E7" />                <Columns>                    <asp:BoundField DataField="UserAccount" HeaderText="用户帐号" />                    <asp:BoundField DataField="Password" HeaderText="用户密码" />                    <asp:BoundField DataField="UserName" HeaderText="用户姓名" />                    <asp:BoundField DataField="UserGender" HeaderText="性别" />                    <asp:BoundField DataField="UserBirthday" HeaderText="出生日期" />                    <asp:TemplateField ShowHeader="False">                        <ItemTemplate>                            <asp:LinkButton ID="LinkButton1" runat="server" CausesValidation="False"                                 CommandName="Delete" Text="删除" OnClientClick="return confirm('您确认删除这条记录吗?');" Width="40px">                            </asp:LinkButton>                        </ItemTemplate>                    </asp:TemplateField>                                    </Columns>                <PagerTemplate>                                                      <asp:Label ID="lb_Pagecount" runat="server" ForeColor="Blue"></asp:Label>                                 <asp:Label ID="lb_Currentpage" runat="server" ForeColor="Blue"></asp:Label>                                 <asp:LinkButton ID="lbtn_First" runat="server" CommandArgument="0" OnClick="PagerButtonClick" Text="首页" Width="40px"></asp:LinkButton>                                <asp:LinkButton ID="lbtn_Prev" runat="server" CommandArgument="prev" OnClick="PagerButtonClick" Text="上一页" Width="50px"></asp:LinkButton>                                <asp:LinkButton ID="lbtn_Next" runat="server" CommandArgument="next" OnClick="PagerButtonClick" Text="下一页" Width="50px"></asp:LinkButton>                                <asp:LinkButton ID="lbtn_Last" runat="server" CommandArgument="last" OnClick="PagerButtonClick" Text="尾页" Width="40px"></asp:LinkButton>                                                    </PagerTemplate>            </asp:GridView>

     

     

    后台.cs:

    public partial class Administrator_Admin : System.Web.UI.Page{    protected void Page_Load(object sender, EventArgs e)    {        gv_DataBind();        string admin = Session["userAccount"].ToString();        lbAdminName.Text = admin;    }    //为GridView绑定数据    public void gv_DataBind()    {        DataAccess da = new DataAccess();        DataSet ds=da.bindGridView();        this.gvUserInfo.DataSource = ds.Tables[0].DefaultView;        this.gvUserInfo.DataBind();        //获取gridview控件中的底部页导航行        GridViewRow gvr = this.gvUserInfo.BottomPagerRow;        ((Label)gvr.FindControl("lb_currentPage")).Text = "第" + (gvUserInfo.PageIndex+1).ToString() + "页";        ((Label)gvr.FindControl("lb_Pagecount")).Text = "总共" + gvUserInfo.PageCount.ToString() + "页";    }    //分页功能实现    protected void gvUserInfo_PageIndexChanging(object sender, GridViewPageEventArgs e)    {        this.gvUserInfo.PageIndex = e.NewPageIndex;        gv_DataBind();    }    //删除功能    protected void gvUserInfo_RowDeleting(object sender, GridViewDeleteEventArgs e)    {        string userId = this.gvUserInfo.DataKeys[e.RowIndex].Value.ToString();        DataAccess da = new DataAccess();        da.deleteRecord(userId);        gv_DataBind();    }    //分页按钮事件    public void PagerButtonClick(object sender, EventArgs e)    {        string arg = ((LinkButton)sender).CommandArgument.ToString();        switch (arg)        {            case "next":                if (gvUserInfo.PageIndex < (gvUserInfo.PageCount - 1))                {                    gvUserInfo.PageIndex += 1;                }                break;            case "prev":                if (gvUserInfo.PageIndex > 0)                {                    gvUserInfo.PageIndex -= 1;                }                break;            case "last":                gvUserInfo.PageIndex = gvUserInfo.PageCount - 1;                break;            default:                gvUserInfo.PageIndex = 0;                break;                    }        gv_DataBind();    }


    最新回复(0)