首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > ASP >

Asp.net中表头归并 复杂表头实现

2012-09-23 
Asp.net中表头合并 复杂表头实现有需要需要实现复杂表头,折腾了一天多才做成这个样子 和大家分享一下代码

Asp.net中表头合并 复杂表头实现

Asp.net中表头归并 复杂表头实现

有需要需要实现复杂表头,折腾了一天多才做成这个样子 和大家分享一下

代码实现

 protected void Page_Load(object sender, EventArgs e)    {        DataTable tblDatas = new DataTable("Datas");        tblDatas.Columns.Add("管理单位", Type.GetType("System.String"));        tblDatas.Columns.Add("地区", Type.GetType("System.String"));        tblDatas.Columns.Add("用户名称", Type.GetType("System.String"));        tblDatas.Columns.Add("年度合同量", Type.GetType("System.String"));        tblDatas.Columns.Add("平均出站压力", Type.GetType("System.String"));        tblDatas.Columns.Add("日实际供气量", Type.GetType("System.String"));        tblDatas.Columns.Add("月供气量", Type.GetType("System.String"));        tblDatas.Columns.Add("年累计供气量", Type.GetType("System.String"));        //添加数据        //tblDatas.Rows.Add(new object[] {  "单位名称", "地区", "用户名称",10000,0.14,222,230,240 });        SqlConnection conn =new SqlConnection();        conn.ConnectionString="";        try        {            conn.Open();            SqlDataAdapter Sda = new SqlDataAdapter("SELECT g.MSSQY AS 管理单位,g.YHDQ AS 地区,g.yhm AS 用户名称,s.mhtl AS 年度合同量,s.MYL AS 平均出站压力,s.MGQL AS 日实际供气量, s.MYGQL AS 月供气量,s.MNGQL AS 年供气量 FROM dbo.YHGX g INNER JOIN dbo.YHGX_SJ s ON g.MZCMID=s.MZCMID AND g.MXLMID=s.MXLMID AND g.YHMID=s.YHMID AND g.SHYHMID=s.SHYHMID;",conn);            DataSet ds = new DataSet();            Sda.Fill(ds,"Data");            //定义变量用于存储数据            string GLDW;   //管理单位            string DQ;     //地区            string YHMC;   //用户名称            string NDHTL;  //年度合同量            string PJCZYL; //平均出站压力            string RSJGQL; //日实际供气量            string YGQL;   //月供气量            string NLJQL;  //年累计气量            for (int i = 0; i < ds.Tables["Data"].Rows.Count; i++)            {                //开始把值赋值给变量然后添加到目标Datatable                GLDW = ds.Tables["Data"].Rows[i][0].ToString().Trim();                DQ = ds.Tables["Data"].Rows[i][1].ToString().Trim();                YHMC = ds.Tables["Data"].Rows[i][2].ToString().Trim();                NDHTL = ds.Tables["Data"].Rows[i][3].ToString().Trim();                PJCZYL = ds.Tables["Data"].Rows[i][4].ToString().Trim();                RSJGQL = ds.Tables["Data"].Rows[i][5].ToString().Trim();                YGQL = ds.Tables["Data"].Rows[i][6].ToString().Trim();                NLJQL = ds.Tables["Data"].Rows[i][7].ToString().Trim();                tblDatas.Rows.Add(new object[] {  GLDW, DQ, YHMC,NDHTL,PJCZYL,RSJGQL,YGQL,NLJQL });            }        }        catch (Exception ex)        {            throw ex;        }        finally        {            conn.Close();            conn.Dispose();         }                            this.GridView1.DataSource = tblDatas;        this.GridView1.DataBind();    }    protected void GridView1_RowCreated(object sender, GridViewRowEventArgs e)    {        switch (e.Row.RowType)        {            case DataControlRowType.Header:                string StrDate = DateTime.Now.ToString("yyyy.MM.dd");                //第一行表头                TableCellCollection tcHeader = e.Row.Cells;                tcHeader.Clear();                //第二行表头                tcHeader.Add(new TableHeaderCell());                tcHeader[0].Attributes.Add("colspan", "1");                tcHeader[0].Attributes.Add("width", "60");                tcHeader[0].Text = "数据日期";                tcHeader.Add(new TableHeaderCell());                tcHeader[1].Attributes.Add("colspan", "4");                tcHeader[1].Attributes.Add("width", "160");                tcHeader[1].Text = StrDate;                tcHeader.Add(new TableHeaderCell());                tcHeader[2].Attributes.Add("colspan", "1");                tcHeader[2].Attributes.Add("width", "165");                tcHeader[2].Text = "统计部门";                tcHeader.Add(new TableHeaderCell());                tcHeader[3].Attributes.Add("colspan", "5");                tcHeader[3].Attributes.Add("width", "240");                tcHeader[3].Text = "恒达研发</th></tr><tr>";                //第三行表头                tcHeader.Add(new TableHeaderCell());                tcHeader[4].Text = "管理单位";                tcHeader[4].Attributes.Add("rowspan","2");                tcHeader.Add(new TableHeaderCell());                tcHeader[5].Text = "地区";                tcHeader[5].Attributes.Add("rowspan", "2");                tcHeader.Add(new TableHeaderCell());                tcHeader[6].Text = "用户名称";                tcHeader[6].Attributes.Add("rowspan", "2");                tcHeader.Add(new TableHeaderCell());                tcHeader[7].Attributes.Add("colspan", "8");                tcHeader[7].Text = "单位(万方)</th></tr><tr>";                 //添加第四行表头                //tcHeader.Add(new TableHeaderCell());                //tcHeader[8].Text = "管理单位";                //tcHeader.Add(new TableHeaderCell());                //tcHeader[9].Text = "地区";                //tcHeader.Add(new TableHeaderCell());                //tcHeader[10].Text = "用户名称";                tcHeader.Add(new TableHeaderCell());                tcHeader[8].Text = "年度合同量";                tcHeader.Add(new TableHeaderCell());                tcHeader[9].Text = "平均出站压力";                tcHeader.Add(new TableHeaderCell());                tcHeader[10].Text = "日实际供气量";                tcHeader.Add(new TableHeaderCell());                tcHeader[11].Text = "月供气量";                tcHeader.Add(new TableHeaderCell());                tcHeader[12].Text = "年累计供气量</th></tr><tr>";                break;        }    }



热点排行