【问题标题】:ASP.net gridview paging index disappear when i change the page index当我更改页面索引时,ASP.net gridview 分页索引消失
【发布时间】:2013-11-08 08:50:19
【问题描述】:

这是我的代码:当我更改寻呼机的索引时,我得到了正确的数据,但寻呼机页脚消失了:

<asp:GridView ID="GridView1" runat="server" PageSize="4" AllowPaging="true"     AllowSorting="true" AutoGenerateColumns="false" OnRowEditing="GridView1_RowEditing" DataKeyNames="id" OnRowCancelingEdit="GridView1_RowCancelingEdit" AlternatingRowStyle-CssClass="eventRowStyle" OnPageIndexChanging="GridView1_PageIndexChanging" OnPageIndexChanged="GridView1_PageIndexChanged">

代码隐藏:

protected void Page_Load(object sender, EventArgs e)
{
        if (!IsPostBack)
        {
            GridViewDBEntities model = new GridViewDBEntities();
            var query = from p in model.userTbls select p;
            GridView1.DataSource = query;
            GridView1.DataBind();
        }
    }

protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e)
{
    GridViewDBEntities model = new GridViewDBEntities();
    var query = (from p in model.userTbls orderby p.id ascending select p).Skip((e.NewPageIndex) * GridView1.PageSize).Take(GridView1.PageSize);
    GridView1.PageIndex = e.NewPageIndex;
    GridView1.DataSource = query;
    GridView1.DataBind();
}

【问题讨论】:

    标签: asp.net linq gridview


    【解决方案1】:

    您可以强制您的寻呼机保持可见!

    protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
     {
        GridView1.BottomPagerRow.visible = True 
    

    顺便说一句,您已经定义了 pageSize 并将 Paging 设置为 true,所以我认为这样就可以了

        protected void Page_Load(object sender, EventArgs e)
       {
            if (!IsPostBack)
            {
               BindGrid();
    
            }
        }
           private void BindGrid()
            {
                GridViewDBEntities model = new GridViewDBEntities();
                var query = from p in model.userTbls select p;
                GridView1.DataSource = query;
                GridView1.DataBind();
            }
    
    protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e)
    {
      //  GridViewDBEntities model = new GridViewDBEntities();
       // var query = (from p in model.userTbls orderby p.id ascending select //p).Skip((e.NewPageIndex) * GridView1.PageSize).Take(GridView1.PageSize);
        GridView1.PageIndex = e.NewPageIndex;
       // GridView1.DataSource = query;
        //GridView1.DataBind();
         BindGrid();
    }
    

    如果您必须实现某些必须编辑网格或插入记录的功能,删除!IsPostback 稍后会导致问题,更好的方法是创建一个Bind 方法并根据要求使用它。

    【讨论】:

    • 我的用户 GridView1.BottomPagerRow.visible = True 在我的 GridView1_RowDataBound 但得到错误 ==> 对象引用未设置为对象的实例。
    • 现在我是用户 GridView1.BottomPagerRow.Visible = true;在我的 GridView1_DataBound 处理程序中,现在它显示寻呼机行,但只显示“1”,它没有链接,我的另一个页面索引没有显示
    • 我这样做并得到解决,我的问题是我的用户在我的页面加载中回发
    • @MohammadrezaJahankhah 你有没有从你的代码中删除!IsPostBack
    猜你喜欢
    • 2018-02-23
    • 1970-01-01
    • 1970-01-01
    • 2019-07-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多