通过上传控件把EXECL表导入到GridView后能显示,但分页的事件那么写不行,请高手帮忙看下应该怎么改
  protected void Button1_Click(object sender, EventArgs e)
    {
        //判断是否上传了文件 
        if (fileUpload.HasFile)
        {
            //指定上传文件在服务器上的保存路径 
            string savePath = Server.MapPath("~/upload/");
            //检查服务器上是否存在这个物理路径,如果不存在则创建 
            if (!System.IO.Directory.Exists(savePath))
            {
                System.IO.Directory.CreateDirectory(savePath);
            }
            string fileName = savePath + "\\" + fileUpload.FileName;
            fileUpload.SaveAs(fileName);//保存文件 
   
            GridView1.DataSource = ImportExcel(fileName).Tables[0].DefaultView;
            GridView1.DataBind();
        }    }
    public DataSet ImportExcel(string strFileName)
    {
        if (strFileName != "")
        {
            string conn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + strFileName + ";Extended Properties=Excel 8.0";
            string sql = "select * from [sheet1$]";
            OleDbDataAdapter da = new OleDbDataAdapter(sql, conn);
            DataSet ds = new DataSet();
            try
            {
                da.Fill(ds);
            }
            catch { }            return ds;
        }
        else
        {
            return null;
        }
    }
  
    protected void GridView1_PageIndexChanging1(object sender, GridViewPageEventArgs e)
    { 
     
       // GridView1.DataSource = ImportExcel(fileName).Tables[0].DefaultView;
        GridView1.DataBind();
    }

解决方案 »

  1.   

    GridView1.PageIndex = e.NewPageIndex;
    GridView1.DataSource = ImportExcel(fileName).Tables[0].DefaultView; 
    GridView1.DataBind(); 
      

  2.   

    GridView1.PageIndex = e.NewPageIndex;
               //绑定数据
    参考
    http://www.cnblogs.com/xdotnet/archive/2006/09/29/gridview_paging_myself.html
      

  3.   

     protected void Button1_Click(object sender, EventArgs e) 
        { 
            //判断是否上传了文件 
            if (fileUpload.HasFile) 
            { 
                //指定上传文件在服务器上的保存路径 
                string savePath = Server.MapPath("~/upload/"); 
                //检查服务器上是否存在这个物理路径,如果不存在则创建 
                if (!System.IO.Directory.Exists(savePath)) 
                { 
                    System.IO.Directory.CreateDirectory(savePath); 
                } 
                string fileName = savePath + "\\" + fileUpload.FileName; 
                fileUpload.SaveAs(fileName);//保存文件 
      
                GridView1.DataSource = ImportExcel(fileName).Tables[0].DefaultView; 
                GridView1.DataBind(); 
            }     } 
        public DataSet ImportExcel(string strFileName) 
        { 
            if (strFileName != "") 
            { 
                string conn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + strFileName + ";Extended Properties=Excel 8.0"; 
                string sql = "select * from [sheet1$]"; 
                OleDbDataAdapter da = new OleDbDataAdapter(sql, conn); 
                DataSet ds = new DataSet(); 
                try 
                { 
                    da.Fill(ds); 
                } 
                catch { }             return ds; 
            } 
            else 
            { 
                return null; 
            } 
        } 
      
        protected void GridView1_PageIndexChanging1(object sender, GridViewPageEventArgs e) 
        { 
          //先设PageSize,AllowPaging
              this.GridView1.PageIndex = e.NewPageIndex;  
            GridView1.DataBind(); 
        }
    我是这么写的,上传第一次能正常显示,但是点分页的时候就不显示了,请高手帮忙看下
      

  4.   

    用数据源控件,
    或者protected void GridView1_PageIndexChanging1(object sender, GridViewPageEventArgs e) 
        { 
          //先设PageSize,AllowPaging 
              this.GridView1.PageIndex = e.NewPageIndex;
      GridView1.DataSource = ImportExcel(fileName).Tables[0].DefaultView; 
            GridView1.DataBind(); 
        } 
    //再给数据源重新赋值
      

  5.   

    GridView1.DataSource = ImportExcel(fileName).Tables[0].DefaultView; 加上这句就会显示上下文不存在fileName
    改成

    //先设PageSize,AllowPaging
            this.GridView1.PageIndex = e.NewPageIndex;
            string savePath = Server.MapPath("~/upload/");
            //检查服务器上是否存在这个物理路径,如果不存在则创建 
            if (!System.IO.Directory.Exists(savePath))
            {
                System.IO.Directory.CreateDirectory(savePath);
            }
            string fileName = savePath + "\\" + fileUpload.FileName;
            GridView1.DataSource = ImportExcel(fileName).Tables[0].DefaultView;
            GridView1.DataBind();
    的话就运行就会显示不存在表0,怎么回事啊~~~求助中~~~~~~