<
%@ Page Language
=
"
VB
"
%
>
< !DOCTYPE html PUBLIC " -//W3C//DTD XHTML 1.0 Transitional//EN " " http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd " >
< script runat = " server " >
Function CreateDataSource() Function CreateDataSource() As ICollection
Dim dt As System.Data.DataTable = New System.Data.DataTable
Dim dr As System.Data.DataRow
dt.Columns.Add(New System.Data.DataColumn("学生姓名", GetType(System.String)))
dt.Columns.Add(New System.Data.DataColumn("语文", GetType(System.Decimal)))
dt.Columns.Add(New System.Data.DataColumn("数学", GetType(System.Decimal)))
dt.Columns.Add(New System.Data.DataColumn("英语", GetType(System.Decimal)))
Dim i As Integer = 0
For i = 0 To 7
Dim rd As System.Random = New System.Random(Environment.TickCount * i)
dr = dt.NewRow
dr(0) = "学生" + i.ToString
dr(1) = System.Math.Round(rd.NextDouble * 100, 2)
dr(2) = System.Math.Round(rd.NextDouble * 100, 2)
dr(3) = System.Math.Round(rd.NextDouble * 100, 2)
dt.Rows.Add(dr)
Next
Dim dv As System.Data.DataView = New System.Data.DataView(dt)
Return dv
End Function
Protected Sub Page_Load() Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs)
If Not IsPostBack Then
GridView1.BorderColor = System.Drawing.Color.DarkOrange
GridView1.DataSource = CreateDataSource()
GridView1.DataBind()
End If
End Sub
Protected Sub GridView1_RowCreated() Sub GridView1_RowCreated(ByVal sender As Object, ByVal e As GridViewRowEventArgs)
If e.Row.RowType = DataControlRowType.Header Then
Dim rowHeader As GridViewRow = New GridViewRow(0, 0, DataControlRowType.Header, DataControlRowState.Normal)
rowHeader.BackColor = System.Drawing.Color.White
rowHeader.Font.Bold = True
Dim cells As TableCellCollection = e.Row.Cells
Dim headerCell As TableCell = New TableCell
headerCell.Text = ""
rowHeader.Cells.Add(headerCell)
headerCell = New TableCell
headerCell.Text = "学生成绩"
headerCell.ColumnSpan = cells.Count - 1
headerCell.HorizontalAlign = HorizontalAlign.Center
rowHeader.Cells.Add(headerCell)
rowHeader.Visible = True
GridView1.Controls(0).Controls.AddAt(0, rowHeader)
End If
End Sub
Protected Sub GridView1_RowDataBound() Sub GridView1_RowDataBound(ByVal sender As Object, ByVal e As GridViewRowEventArgs)
e.Row.Attributes.Add("style", "background:#FFF")
End Sub
</ script >
< html xmlns = " http://www.w3.org/1999/xhtml " >
< head >
< title > 合并 GridView 的表头单元格 </ title >
</ head >
< body >
< form id = " Form1 " runat = " server " >
< asp:GridView ID = " GridView1 " runat = " server " CellSpacing = " 1 " CellPadding = " 3 "
Font - Size = " 12px " Width = " 300px " BackColor = " orange " BorderWidth = " 0 "
OnRowDataBound = " GridView1_RowDataBound " OnRowCreated = " GridView1_RowCreated " >
</ asp:GridView >
</ form >
</ body >
</ html >
< !DOCTYPE html PUBLIC " -//W3C//DTD XHTML 1.0 Transitional//EN " " http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd " >
< script runat = " server " >
Function CreateDataSource() Function CreateDataSource() As ICollection
Dim dt As System.Data.DataTable = New System.Data.DataTable
Dim dr As System.Data.DataRow
dt.Columns.Add(New System.Data.DataColumn("学生姓名", GetType(System.String)))
dt.Columns.Add(New System.Data.DataColumn("语文", GetType(System.Decimal)))
dt.Columns.Add(New System.Data.DataColumn("数学", GetType(System.Decimal)))
dt.Columns.Add(New System.Data.DataColumn("英语", GetType(System.Decimal)))
Dim i As Integer = 0
For i = 0 To 7
Dim rd As System.Random = New System.Random(Environment.TickCount * i)
dr = dt.NewRow
dr(0) = "学生" + i.ToString
dr(1) = System.Math.Round(rd.NextDouble * 100, 2)
dr(2) = System.Math.Round(rd.NextDouble * 100, 2)
dr(3) = System.Math.Round(rd.NextDouble * 100, 2)
dt.Rows.Add(dr)
Next
Dim dv As System.Data.DataView = New System.Data.DataView(dt)
Return dv
End Function
Protected Sub Page_Load() Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs)
If Not IsPostBack Then
GridView1.BorderColor = System.Drawing.Color.DarkOrange
GridView1.DataSource = CreateDataSource()
GridView1.DataBind()
End If
End Sub
Protected Sub GridView1_RowCreated() Sub GridView1_RowCreated(ByVal sender As Object, ByVal e As GridViewRowEventArgs)
If e.Row.RowType = DataControlRowType.Header Then
Dim rowHeader As GridViewRow = New GridViewRow(0, 0, DataControlRowType.Header, DataControlRowState.Normal)
rowHeader.BackColor = System.Drawing.Color.White
rowHeader.Font.Bold = True
Dim cells As TableCellCollection = e.Row.Cells
Dim headerCell As TableCell = New TableCell
headerCell.Text = ""
rowHeader.Cells.Add(headerCell)
headerCell = New TableCell
headerCell.Text = "学生成绩"
headerCell.ColumnSpan = cells.Count - 1
headerCell.HorizontalAlign = HorizontalAlign.Center
rowHeader.Cells.Add(headerCell)
rowHeader.Visible = True
GridView1.Controls(0).Controls.AddAt(0, rowHeader)
End If
End Sub
Protected Sub GridView1_RowDataBound() Sub GridView1_RowDataBound(ByVal sender As Object, ByVal e As GridViewRowEventArgs)
e.Row.Attributes.Add("style", "background:#FFF")
End Sub
</ script >
< html xmlns = " http://www.w3.org/1999/xhtml " >
< head >
< title > 合并 GridView 的表头单元格 </ title >
</ head >
< body >
< form id = " Form1 " runat = " server " >
< asp:GridView ID = " GridView1 " runat = " server " CellSpacing = " 1 " CellPadding = " 3 "
Font - Size = " 12px " Width = " 300px " BackColor = " orange " BorderWidth = " 0 "
OnRowDataBound = " GridView1_RowDataBound " OnRowCreated = " GridView1_RowCreated " >
</ asp:GridView >
</ form >
</ body >
</ html >