dataGrid 的问题:
我想在datagrid 的某一列在客户端呈现出一个层次关系,如
1 书刊
2 化学书
3 初中化学
4 高中化学
5 高一化学
6 高二化学
7 物理书
8 高中物理 当然在数据库里有Name和Tier(层次)字段,但Name 不包含空格,不知在模板列里怎么写:
<asp:Label id="Label1" runat="server" Text='<%# DataBinder.Eval(Container.DataItem, "Name") %>' />
我想在datagrid 的某一列在客户端呈现出一个层次关系,如
1 书刊
2 化学书
3 初中化学
4 高中化学
5 高一化学
6 高二化学
7 物理书
8 高中物理 当然在数据库里有Name和Tier(层次)字段,但Name 不包含空格,不知在模板列里怎么写:
<asp:Label id="Label1" runat="server" Text='<%# DataBinder.Eval(Container.DataItem, "Name") %>' />
答:可以实现,我就是看了别人做出来了才想这样做,因为程序里需要这样的设计.
<asp:Label id="Label2" runat="server" Text='<%# getName(DataBinder.Eval(Container.DataItem, "Name"),cint(DataBinder.Eval(Container.DataItem, "tier"))) %>' />Protected Function getName(ByVal name As String, ByVal theTier As Integer) As String
Dim theName As String If theTier = 1 Then
theName = "<img border=0 src='./Images/folder.gif'>" & name
Else
If theTier = 2 Then
theName = "<img border=0 src='./Images/spacer.gif' width=22><img border=0 src='./Images/folder.gif'>" & name
Else
If theTier = 3 Then
theName = "<img border=0 src='./Images/spacer.gif' width=22 hight=22><img border=0 src='./Images/spacer.gif' width=22><img border=0 src='./Images/folder.gif'>" & name
End If
End If
End If Return theName
End Function
例如
主ID 01
子ID 0101 0102
主ID 02
子ID 0201 0202 0203
在用datagrid绑定时 需要对id进行字符串比对 可实现你想要的效果 慢慢体会吧