2015-08-16 3 views
2

У меня есть Multi View с двумя видами в нем. View1 имеет вид сетки, а сетчатый вид разрешает разбиение на страницы на десять записей.Проблемы с подкачкой MultiView и GridView

Проблема заключается в том, что я должен нажимать на номер страницы, чтобы перейти на эту страницу.

Первый щелчок ничего не произойдет, второй щелчок вид сетки переходит на страницу, что это вопрос

<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

Вы не подменой сетки сразу меняет номер страницы.

Ваш код это:

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(); 
} 
Смежные вопросы