TreeView ListView

zhengtx828 2009-04-25 12:11:09
我想用TreeView 和 ListView 实现SQL 2000 的那种效果。

左边选中树节点,右边就相应的显示该节点的子节点。节点图标和节点文本文本一起显示。

不知道如何实现,最好是用代码做。 我的树的节点是和数据库连接的。
...全文
99 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
hoover1976 2011-10-18
  • 打赏
  • 举报
回复
to 凋零的雪花:

我按照您的方法试了一下。 LsView.Items.Add(litem)在循环里加不上,把这句移到循环外面就可以增加到list里面。哪怕是循环就执行了一次。

我的项目是这样的,先从数据库里读到treeview,同时添加到listview。现在我的想法是每次循环加到tree的同时,也把这一行的其他信息加到list里面。

谢谢!!!
w136712058 2009-04-25
  • 打赏
  • 举报
回复
沙发哦。。。呵呵!
下面的应该可以满足你的需求了


Private Sub TreeView1_NodeMouseDoubleClick(ByVal sender As Object, ByVal e As System.Windows.Forms.TreeNodeMouseClickEventArgs) Handles TreeView1.NodeMouseDoubleClick

'自定义的数据查询方法返回一个DataTable
'e.Node.Name是对应的节点名称,也就是你要传的参数
Dim TreeTable As DataTable =FindData(e.Node.Name)

If TreeTable IsNot Nothing Then
Dim TreeRow As DataRow
Dim litem As ListViewItem
'LsView你定义的ListView控件
LsView.Items.Clear()
'循环添加你要的数据节点
For Each TreeRow In TreeTable.Rows
litem = New ListViewItem("items" & TreeRow("字段x").ToString & "_" & _
TreeRow("字段y").ToString, 1)
'至于你要显示图标就更简单了,直接在窗体上拉一个ImageList控件添加几个图标
'然后在上面的listviewitem构造函数中最后面一个整形参数修改对应的图标就成了
'不过你要先把ListView的LargeImageList或StateImageList和imagelist关联
LsView.Items.Add(litem)
End If
Next
Else
MsgBox("没有任何数据", MsgBoxStyle.Information + MsgBoxStyle.OkOnly, "消息")
End If
End Sub

16,552

社区成员

发帖
与我相关
我的任务
社区描述
VB技术相关讨论,主要为经典vb,即VB6.0
社区管理员
  • VB.NET
  • 水哥阿乐
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧