我有一个遵循层次结构的树视图
Season 1
Farm 1
Field 1
Field 2
Crop 1
Crop 2
Farms 2
Field 1
Field 2
Crop 1
Crop 2
和一个显示数据的 GridView 与 treeview 选择的节点值。我已经使用 sqldatasource 在 gridview 中显示数据,并使用以下代码和查询
Dim cmd As OleDbCommand = New OleDbCommand()
If TreeView1.SelectedNode.Depth = 0 Then
SqlDataSource1.SelectCommand = ("SELECT * FROM V_FARMS where SSN_id='" & TreeView1.SelectedNode.Value & "'")
ElseIf TreeView1.SelectedNode.Depth = 1 Then
SqlDataSource1.SelectCommand = ("SELECT * FROM V_FARMS where FRM_id='" & TreeView1.SelectedNode.Value & "'")
ElseIf TreeView1.SelectedNode.Depth = 2 Then
SqlDataSource1.SelectCommand = ("SELECT * FROM V_FARMS where FLD_id='" & TreeView1.SelectedNode.Value & "'")
ElseIf TreeView1.SelectedNode.Depth > 2 Then
SqlDataSource1.SelectCommand = ("SELECT * FROM V_FARMS where CRP_id='" & TreeView1.SelectedNode.Value & "'")
End If
现在的问题是,当我选择第 1 季时,它会显示针对第 1 季的数据 OK。但是,当我选择 Farm1 时,它会显示针对 Farm 1 的所有数据,而不是针对 Farm 1 的第 1 季的所有数据,并且字段值的行为相同。如何针对其上面的父节点和根节点等显示每个节点的数据.