以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 一个关于Ttreview的问题 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=28066) |
-- 作者:dreamyuan -- 发布时间:2013/1/17 16:47:00 -- 一个关于Ttreview的问题 例我有个Treeview1里有个“所有类型”的根节点,表里商品类型只有个“商品类型”列,能否只用BuildTree实现把“商品类型”加载在“所有类型”子节点下! |
-- 作者:lin_hailun -- 发布时间:2013/1/17 16:55:00 -- 思路颠倒了。应该是用buildTree生成目录树以后,插入所有类型的。 比如 trv 是treeview trv.Nodes.Insert("显示所有行", 0) |
-- 作者:dreamyuan -- 发布时间:2013/1/17 17:08:00 -- trv.Nodes.Insert("显示所有行", 0) 那跟加载的是同一个根节点,我是想把加载的内容放在“所有类型”的子节点中 |
-- 作者:lin_hailun -- 发布时间:2013/1/17 17:23:00 -- 以下是引用dreamyuan在2013-1-17 17:08:00的发言: trv.Nodes.Insert("显示所有行", 0) 那跟加载的是同一个根节点,我是想把加载的内容放在“所有类型”的子节点中 插入一个节点以后,把下面的节点向右移动一格。 比如代码 Dim tr As WinForm.TreeView = e.Form.Controls("TreeView1") tr.Nodes(1).MoveRight() |
-- 作者:dreamyuan -- 发布时间:2013/1/17 17:39:00 -- Dim tv As WinForm.TreeView 这样不行
|
-- 作者:lin_hailun -- 发布时间:2013/1/17 17:41:00 -- 这样 Dim tv As WinForm.TreeView tv =e.Form.Controls("TreeView1") tv.BuildTree("商品类型", "商品类型") tv.Nodes.Insert("所有类型", 0) tv.Nodes(1).MoveRight() |
-- 作者:dreamyuan -- 发布时间:2013/1/17 17:45:00 -- 这样只能移一个,如果多就麻烦了,还不如表里多个列值为“所有类型”呵呵,有没有更简单的 比如给Nodes加个BuildTree方法 |
-- 作者:lin_hailun -- 发布时间:2013/1/17 17:54:00 -- 可以这样,用sql语句生成一个表。 dim cmd as new sqlcommand cmd.CommandText = "Select \'所有类型\' as 附加列, 商品类型 from {商品类型}" dim dt as datatable = cmd.ExecuteReader Dim tv As WinForm.TreeView tv =e.Form.Controls("TreeView1") tv.BuildTree(dt, "附加列|商品类型") |
-- 作者:dreamyuan -- 发布时间:2013/1/17 19:43:00 -- 谢谢林老师,OK了 |