2012-03-16 10 views
10

ho consentito il paging e aggiunto i seguenti codici ma ho ottenuto l'errore. Qualcuno sa quale potrebbe essere il problema?L'evento licenziato GridView PageIndexChanging che non è stato gestito

Codice:

protected void SubmitAppraisalGrid_SelectedIndexChanging(object sender, GridViewSelectEventArgs e) 
    { 
     SubmitAppraisalGrid.PageIndex = e.NewSelectedIndex; 
     SubmitAppraisalGrid.DataBind(); 

    } 

Design:

<asp:GridView ID="SubmitAppraisalGrid" runat="server" 
       AutoGenerateColumns="False" BorderWidth="0px" 
       onrowcreated="SubmitAppraisalGrid_RowCreated" ShowHeader="False" 
       style="margin-right: 0px" AllowPaging="True" PageSize="1" 
       onselectedindexchanging="SubmitAppraisalGrid_SelectedIndexChanging"> 
       </asp:GridView> 

risposta

2

provare

OnPageIndexChanging="SubmitAppraisalGrid_PageIndexChanging" 

invece di

onselectedindexchanging="SubmitAppraisalGrid_SelectedIndexChanging" 


protected void SubmitAppraisalGrid_PageIndexChanging(object sender, GridViewPageEventArgs e) 
{ 
    SubmitAppraisalGrid.PageIndex = e.NewPageIndex; 
    BindGrid(); 
} 
0

invece di utilizzare

SubmitAppraisalGrid.PageIndex = e.NewSelectedIndex; 

è necessario utilizzare

SubmitAppraisalGrid.PageIndex = e.NewPageIndex; 

e se hai ancora una volta l'errore dopo plese l'errore troppo ..

10

Se è stata impostata una GridView AllowPaging attributo "True" e non gestiscono l'evento PageIndexChanging quindi questo errore si alza.

Per lavorare con paginazione aggiungere il gestore di eventi PageIndexChanging alla rete e cambiare la tua markup e codice come:

<asp:GridView ID="SubmitAppraisalGrid" runat="server" 
       AutoGenerateColumns="False" BorderWidth="0px" 
       onrowcreated="SubmitAppraisalGrid_RowCreated" ShowHeader="False" 
       style="margin-right: 0px" AllowPaging="True" PageSize="1" 
       onselectedindexchanging="SubmitAppraisalGrid_SelectedIndexChanging" 
       OnPageIndexChanging="SubmitAppraisalGrid_PageIndexChanging"> 
       </asp:GridView> 

///

protected void gvList_PageIndexChanging(object sender, GridViewPageEventArgs e) 
{ 
    SubmitAppraisalGrid.PageIndex = e.NewPageIndex; 
    SubmitAppraisalGrid.DataBind(); 

    //bindGrid(); 
    //SubmitAppraisalGrid.PageIndex = e.NewPageIndex; 
    //SubmitAppraisalGrid.DataBind(); 
} 

protected void SubmitAppraisalGrid_SelectedIndexChanging(object sender, GridViewSelectEventArgs e) 
{ 
    /// you selected index related logic here. 
} 

Questo evento non viene generato quando si imposta la proprietà PageIndex al livello di programmazione. Controllare la documentazione MSDN di GridView.PageIndexChanging Event

Per riferimento: The GridView fired event PageIndexChanging which wasn't handled

0

Step by Step:

  1. Selezionare GridView dalla progettazione e andare a cose e generare l'evento (PageIndexChanging)
  2. Codice: gridviewname.pageindex=e.NewPageIndex;
+0

Leggere altre risposte. Il tuo non sembra aggiungere qualcosa di nuovo a loro. –

6

Inserisci il codice su PageIndexChanging Evento

protected void SubmitAppraisalGrid_PageIndexChanging(object sender, GridViewPageEventArgs e) 
    { 
     SubmitAppraisalGrid.PageIndex = e.NewPageIndex; 
     SubmitAppraisalGrid.DataBind(); 
    } 

Design:

<asp:GridView ID="SubmitAppraisalGrid" runat="server" 
      AutoGenerateColumns="False" BorderWidth="0px" 
      onrowcreated="SubmitAppraisalGrid_RowCreated" ShowHeader="False" 
      style="margin-right: 0px" AllowPaging="True" PageSize="1" 
      OnPageIndexChanging="SubmitAppraisalGrid_PageIndexChanging"> 
      </asp:GridView> 
0

è necessario chiamare l'evento che cambia la pageIndex dall'indice selezionato cambiando caso di discesa.

protected void PageDropDownList_SelectedIndexChanged(Object sender, EventArgs e) 
{ 
    // Retrieve the pager row. 
    GridViewRow pagerRow = SubmitAppraisalGrid.BottomPagerRow; 

    // Retrieve the PageDropDownList DropDownList from the bottom pager row. 
    DropDownList pageList = (DropDownList)pagerRow.Cells[0].FindControl("PageDropDownList"); 

    // Set the PageIndex property to display that page selected by the user. 
    GridViewPageEventArgs evt = new GridViewPageEventArgs(pageList.SelectedIndex); 
    SubmitAppraisalGrid_PageIndexChanging(sender, evt); 
} 
Problemi correlati