读书人

用Linq语句建treeview 的有关问题

发布时间: 2012-12-27 10:17:10 作者: rapoo

用Linq语句建treeview 的问题
表结构如下  
BigType Type Name SmallType
HKIF HHI HHI1 A
HKIF HHI HHI2 A
HKIF HHI HHI3 B
HKIF HHI HHI4 B
HKIF HSI HSI1 B
HKIF HSI HSI2 B

如何做到如下效果(不用建HKIF节点):
HHI
-A类型(自定义的节点名称)
    HHI1
HHI2
-B类型(自定义的节点名称)
    HHI3
HHI4
HSI
-B类型(自定义的节点名称)
    HSI1
HSI2

想用linq实现,现以能做到显示二层,最后分类不行, 请高手帮看下。
[解决办法]
//data为表数据
var trees = data
.Select(row => row.Type )
.Distinct()
.Select(d => new TreeNode(d, data
.Where(row => row.Type == d)
.Select(row => new TreeNode(row.Name)
).ToArray() ) ).ToArray();

treeView1.Nodes.AddRange(treequery);

这个语句能做到如下
HHI
  HHI1
HHI2
  HHI3
HHI4
HSI
  HSI1
HSI2

[解决办法]
http://bbs.csdn.net/topics/380239317
[解决办法]
多谢版主回复,这个例子很有用,但是,这个treeview node 是对文件夹的操作,不合适我那情况吧

我那树要对整个table进行遍例吧,用linq可能很方便,

请指教/

读书人网 >.NET

热点推荐