
vb.net 根据数据情况动态改变datagrid样式(急)
有一个数据表,包括字段:姓名,年龄,成绩。希望在datagrid中显示数据时,年龄大于30岁的行显示绿色背景,大于40岁的显示蓝色,大于50岁的显示红色,不知如何实现?请大虾帮忙。
__________________________________________________________________________
重新写一个 tableStyle
__________________________________________________________________________
有一个笨办法。在检索完毕数据之后,将数据绑定控件。然后再写一个函数,遍历每一行数据,取出年龄的字段,进行判断。然后修改控件的属性。
__________________________________________________________________________
楼上两位说的方法都试过了,可始终找不到修改指定row背景色的属性。能不能具体说一下是怎么改。
__________________________________________________________________________
在ItemDataBound事件里面修改row背景色的属性(eg. : e.Item.Cells(i).text > 30)
然后把该行的backcolor=Color.blue
大概如此,以上只是个思路。。。
__________________________________________________________________________
datagrid这个东东是2003的吧
用2005啊
加载完数据后,再for datagridview
star_ais(星星)的方法绝对可行
__________________________________________________________________________
Dim arrlist As New ArrayList
Dim i As Integer
arrlist.Add( "1 ")
arrlist.Add( "2 ")
arrlist.Add( "3 ")
arrlist.Add( "4 ")
arrlist.Add( "5 ")
arrlist.Add( "6 ")
arrlist.Add( "7 ")
DataGrid1.DataSource = arrlist
DataGrid1.DataBind()
For i = 0 To arrlist.Count - 1
If DataGrid1.Items.Item(i).Cells(0).Text > 2 Then
DataGrid1.Items(i).BackColor = Color.Red
End If
Next
效果如下:
Item
1
2 --红色
3 --红色
4 --红色
5 --红色
6 --红色
7 --红色
__________________________________________________________________________
呵呵~可以结贴了吧!
__________________________________________________________________________
to 星星
你的意思我明白,可是DataGrid里没有items这个属性,我用的是2003,这个是2005的,还是其他
__________________________________________________________________________