MultiView和GridView分页问题

时间:2015-08-16 20:52:44

标签: c# asp.net gridview

我有一个包含两个视图的多视图。 View1有一个网格视图,网格视图允许按十个记录进行分页。

问题是我必须按两次页码才能转到该页面。

第一次点击没有任何反应,第二次点击网格视图转到页面是什么问题

<asp:GridView ID="gridusers" AutoGenerateColumns="false" runat="server" AllowPaging="true" OnPageIndexChanging="OnPageIndexChanging" PageSize="10" CssClass="table table-bordered text-nowrap" OnSelectedIndexChanged="gridusers_SelectedIndexChanged"  OnRowDeleting="gridusers_RowDeleting"> 

                     <Columns>
                         <asp:TemplateField HeaderText="Edit">
                             <ItemTemplate>
                                  <asp:LinkButton ID="LinkButton1" runat="server" CssClass="btn btn-primary btn-xs" CausesValidation="False"  CommandName="Select" Text="" ><i class="glyphicon glyphicon-pencil"></i></asp:LinkButton>

                             </ItemTemplate>
                             <controlstyle cssclass="btn btn-primary" />
                         </asp:TemplateField>
                         <asp:TemplateField HeaderText="Delete">
                             <ItemTemplate>
                                 <asp:LinkButton ID="LinkButton2" runat="server" CausesValidation="False"  OnClientClick="return confirm('Are you sure you want to delete this record ?');" CssClass="btn btn-primary btn-xs" CommandName="Delete" Text="Delete"><i class="glyphicon glyphicon-trash"></i></asp:LinkButton>
                             </ItemTemplate>
                             <controlstyle cssclass="btn btn-danger" />
                         </asp:TemplateField>
                         <asp:BoundField DataField="ID" HeaderText="Customer ID" SortExpression="Customer ID" />
                         <asp:BoundField DataField="Name" HeaderText="Customer Name" SortExpression="Name" />
                         <asp:BoundField DataField="Contact Person" HeaderText="Contact Person" SortExpression="Contact Person" />
                         <asp:BoundField DataField="P.O.Box" HeaderText="P.O.Box" SortExpression="P.O.Box" />
                         <asp:BoundField DataField="Address" HtmlEncodeFormatString="false" HeaderText="Address" SortExpression="Address" />
                         <asp:BoundField DataField="Mobile No" HeaderText="Mobile No" SortExpression="Mobile No" />

                     </Columns>

               <SelectedRowStyle BackColor="#D1DDF1"  ForeColor="#333333" />
               </asp:GridView> 

protected void Page_Load(object sender, EventArgs e)
    {
        CustomerClass c = new CustomerClass();

        if (!this.IsPostBack)
        {
            gridusers.DataSource = c.getcst();
            gridusers.DataBind();
        }
    }



protected void OnPageIndexChanging(object sender, GridViewPageEventArgs e)
    {
        gridusers.PageIndex = e.NewPageIndex;
        this.c.getcst();
    }

1 个答案:

答案 0 :(得分:1)

页码更改后,您不会重新绑定网格。

您的代码是:

protected void OnPageIndexChanging(object sender, GridViewPageEventArgs e)
{
    gridusers.PageIndex = e.NewPageIndex;
    this.c.getcst();
}

你需要这样做:

protected void OnPageIndexChanging(object sender, GridViewPageEventArgs e)
{
    gridusers.PageIndex = e.NewPageIndex;
    gridusers.DataSource = c.getcst();
    gridusers.DataBind();
}
相关问题