用Linq加载treeview时代码如下:
private void BindRootTree()
{
this.tv_emp.Nodes.Clear();
this.BindTreeView(null, null);
}
private void BindTreeView(TreeNode tn,DEPARTMENT1 dept)
{
DataEntityQuery<DEPARTMENT1> query = DataEntityQuery<DEPARTMENT1>.Create();
int parentID = dept != null ? dept.id : 0; //判断父节点
var v = from c in query
where c.partentid == parentID
orderby c.id
select c;
IList<DEPARTMENT1> xlist = v.ToList();
foreach (var item in xlist)
{
TreeNode node = new TreeNode();
node.Tag = item;
node.Text = item.name;
if (tn != null)
{
//添加子节点
tn.Nodes.Add(node);
}
else
{
//添加父节点
this.tv_emp.Nodes.Add(node);
}
this.BindTreeView(node,item);
}
}