GridView合併單元格表頭!

在GridView_RowCreated上作文章。

這可能是老辦法了。

我簡單做了個測試。
效果:點擊

HTML code
<form id="form1" runat="server"> <div> <asp:GridView ID="GridView1" runat="server" onrowcreated="GridView1_RowCreated"> </asp:GridView> </div> </form>


C# code
protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { GridView1.DataSource = GetTable(); GridView1.DataBind(); } } private DataTable GetTable() { DataTable dt = new DataTable(); DataColumn dc = new DataColumn(); dc.ColumnName = "ID"; dc.AutoIncrement = true; dc.AutoIncrementSeed = 1; dc.AutoIncrementStep = 1; dt.Columns.Add(dc); dt.PrimaryKey = new DataColumn[] { dc }; dt.Columns.Add("FirstName", typeof(string)); dt.Columns.Add("LastName", typeof(string)); dt.Columns.Add("City", typeof(string)); dt.Columns.Add("Street", typeof(string)); DataRow dr = dt.NewRow(); dr["FirstName"] = "元甲"; dr["LastName"] = ""; dr["City"] = "上海"; dr["Street"] = "南京路325號"; dt.Rows.Add(dr); dr = dt.NewRow(); dr["FirstName"] = ""; dr["LastName"] = ""; dr["City"] = "佛山"; dr["Street"] = "東山路15號"; dt.Rows.Add(dr); return dt; } protected void GridView1_RowCreated(object sender, GridViewRowEventArgs e) { if (e.Row.RowType == DataControlRowType.Header) { // 第一行表頭 TableCellCollection tcHeader = e.Row.Cells; tcHeader.Clear(); tcHeader.Add(new TableHeaderCell()); tcHeader[0].Attributes.Add("rowspan", "3"); //跨三行。 tcHeader[0].Text = "人員ID"; tcHeader.Add(new TableHeaderCell()); tcHeader[1].Attributes.Add("colspan", "4"); //跨四列 tcHeader[1].Text = "基本資料</th></tr><tr>"; // 作弊 // 第二行表頭 tcHeader.Add(new TableHeaderCell()); tcHeader[2].Attributes.Add("colspan", "2"); tcHeader[2].Text = "姓名"; tcHeader.Add(new TableHeaderCell()); tcHeader[3].Attributes.Add("colspan", "2"); tcHeader[3].Text = "聯繫方式</th></tr><tr>"; //作弊 // 第三行表頭 tcHeader.Add(new TableHeaderCell()); tcHeader[4].Text = ""; tcHeader.Add(new TableHeaderCell()); tcHeader[5].Text = ""; tcHeader.Add(new TableHeaderCell()); tcHeader[6].Text = "城市"; tcHeader.Add(new TableHeaderCell()); tcHeader[7].Text = "街道"; } }
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章