我想将列表绑定到TreeView。但它应该这样工作:
我使用实体框架。在最简单的情况下,我有2个表有2个关联。
客户 产品
客户与自身联系 Customer.CustomerID - Customer.ParentID 和 Product.CustomerID - Customer.CustomerID
现在我想填充TreeView并实现这样的目标:
Customer1
SubCustomer1
Product1
Product2
Product3
Customer2
Product4
Customer3
SubCustomer2
Product5
SubCustomer3
SubCustomer4
Product6
Product7
Product8
我想只看到Name属性,并以某种方式检测单击哪一个。
Customer Table有3个导航属性 制品 CustomerChildren CustomerParent
产品表有3个导航属性,但我不想在TreeView中使用它。
在运行时,我想点击某个产品,检测选择了产品(如果选择了客户则停止),然后根据其他控件进行一些数据库修改。
有人可以帮忙吗?
答案 0 :(得分:0)
我现在读了你写过4次的内容,但我仍然不知道你想要什么。但我想我认为有些事情我会选择:
public class className{
public string nodeName;
public className parent;
public List<className> child;
}
然后使用从该类的根开始的递归函数填充treeView:
public void populateTree(className c){
treenode tn;
if(c doesnt exists in treeView)
tn = new node c in treeview
else
tn = node index of c
foreach child in c.child
TreeNode tnChild = add every child of c to this node
populateTree(child)
}