读书人

datagrid 双标题?该如何解决

发布时间: 2012-01-19 20:57:58 作者: rapoo

datagrid 双标题?

声明的全局变量
Private upPager As Boolean = True
Protected Sub MyDataGrid_ItemCreated(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.DataGridItemEventArgs) Handles MyDataGrid.ItemCreated
Dim ItemType As ListItemType
ItemType = e.Item.ItemType
If ItemType = ListItemType.Pager Then
If uppager = true Then
Dim cellPersonal As TableCell
cellPersonal = CType(e.Item.Controls(0), TableCell)
cellPersonal.Controls.Clear()
cellPersonal.BackColor = Drawing.Color.Blue
cellPersonal.ForeColor = Drawing.Color.White
cellPersonal.Font.Bold = True
cellPersonal.ColumnSpan = 1
cellPersonal.HorizontalAlign = HorizontalAlign.Center
cellPersonal.Controls.Add(New LiteralControl( " "))
Dim cellPersonal0 As TableCell
cellPersonal0 = New TableCell()
cellPersonal0.BackColor = Drawing.Color.Blue
cellPersonal0.ForeColor = Drawing.Color.White
cellPersonal0.Font.Bold = True
cellPersonal0.ColumnSpan = 3
cellPersonal0.HorizontalAlign = HorizontalAlign.Center
cellPersonal0.Controls.Add(New LiteralControl( "销售数量 "))
e.Item.Controls.Add(cellPersonal0)


Dim cellPersonal1 As TableCell
cellPersonal1 = New TableCell()
cellPersonal1.BackColor = Drawing.Color.Blue
cellPersonal1.ForeColor = Drawing.Color.White
cellPersonal1.Font.Bold = True
cellPersonal1.ColumnSpan = 3
cellPersonal1.HorizontalAlign = HorizontalAlign.Center
cellPersonal1.Controls.Add(New LiteralControl( "销售收入 "))
e.Item.Controls.Add(cellPersonal1)
uppager=false

End If
End If

End Sub
很简单就这么点代码,声明个全局变量,然后在事件里判断

在itemcreated事件加入后,第一次好使,但无数据在检索时,就变成导航页号了,有数据时候在一次检索才显示出来双标题,请问是什么原因,还有没有别的双标题解决办法?


[解决办法]
参考孟子的标题更改,其实就是把HTML写入到header里
[解决办法]
自己构造个GRID,也很简单啊
[解决办法]
private void DataGrid1_ItemDataBound(object sender,System.Web.UI.WebControls.DataGridItemEventArgs e)
{
if (e.Item.ItemType==ListItemType.Header)
{
e.Item.Cells[0].Attributes.Add( "colspan ", "4 "); //合并列
for(int i=1;i <e.Item.Cells.Count;i++)
{
e.Item.Cells[i].Attributes.Add( "visibility ", "none ");//隐藏其它列
}
e.Item.Cells[0].Text= " <table> 你的DataGrid头部分,html格式 </table> ";
}
}

这样就行了,html部分可以任意定制

读书人网 >asp.net

热点推荐