Saturday, 19 April 2014

The GridView 'GridView1' fired event PageIndexChanging which wasn't handled.

Hello Friends,Today,I have solved this below grid view error which generally comes when we use custom code to populate gridview in asp.net.So,I have added some code to resolve this....Error as follows:
Some points we should remember before bind grid view to custom datasource.They are
1.Create a session,use Ispostback ,and place inside page_load event of page.
2.In PageChangingIndex event bind datasource and  handle pageIndex.


The GridView 'GridView1' fired event PageIndexChanging which wasn't handled.

Here is Error free code:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data;
using System.Data.SqlClient;

public partial class Default3 : System.Web.UI.Page
{
    SqlConnection con = new SqlConnection("Data Source=.\\SQLEXPRESS;AttachDbFilename=C:\\Users\\Dev Sharma\\Documents\\Visual Studio 2010\\WebSites\\c2Chart\\App_Data\\northwnd.mdf;Integrated Security=True;User Instance=True");
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            Session["CustReport"] = null;
        }
        if (Session["CustReport"] != null)
        {
            GridView1.DataSource = Session["CustReport"];
            GridView1.DataBind();
        }
       
    }
    protected void Button1_Click(object sender, EventArgs e)
    {
        //SqlCommand cmd = new SqlCommand();
        //cmd.Connection = con;
        con.Open();
        SqlDataAdapter da = new SqlDataAdapter("Select * from Customers", con);
        DataSet ds = new DataSet();
        da.Fill(ds);
        GridView1.DataSource = ds;
        GridView1.DataBind();
        Session["CustReport"] = ds;
        con.Close();

    }
  

    protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e)
    {
        GridView1.PageIndex = e.NewPageIndex;
        GridView1.DataSource = Session["CustReport"];
        GridView1.DataBind();
    }
}

 

No comments:

Post a Comment