把EXCEL文件导入到GridView,GridView根据要求动态的增加列!

做一个小网页,要把EXCEL中的内容导入到GridView中,而起还并不是单纯的显示出来就OK了,还要根据要求动态的在GridView显示

因为GridView的每一列绑定于哪一个数据字段,根本不清楚!还好有前人留下的点点滴滴,终于完成了!!

此段代码是吧EXCEL的数据导入到一个数据集中!

这点相对简单,各个地方都有代码可COPY

string mystring = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source='" + savePath + "';Extended properties=Excel 8.0";

                OleDbConnection conn = new OleDbConnection(mystring);
                conn.Open();
                OleDbDataAdapter myDa = new OleDbDataAdapter("select   *   from   [Sheet1$]", conn);
                DataSet myDs = new DataSet();
                myDa.Fill(myDs, "xls");
                DataTable dt_test = myDs.Tables[0];

  如果是原封不动的单纯的显示excel文件的内容,绑定数据源就OK了!

GridView1.DataSource = dt;
            GridView1.DataBind();

 但是我们的目标不是这个,是要动态的显示,动态的绑定

                int icols = dt_test.Columns.Count;
                gv_content.DataSource = dt_test;
                BoundField f;
                for (int i = 0; i < icols; i++)
                {
                    f = new BoundField();
                    f.HeaderText = "列标题";
                    f.DataField = dt_test.Columns[i].ColumnName;//绑定的字段
                    gv_content.Columns.Add(f);
                }
                gv_content.DataBind();

  这样能修改的幅度就比较大了!

posted @ 2012-08-09 11:02  AllanChen  阅读(442)  评论(0编辑  收藏  举报