#region############构建treelist#################################
//构建一级目录
public void Loadtreelist()
{
List<Keshi> keshi = Control.SelectKeshi();//获取数据源
//this.treeList1.DataSource = keshi;
foreach (var k in keshi)//遍历数据源
{
TreeListNode node1 = treeList1.AppendNode(null,null);//添加一级目录 父节点为null
node1.SetValue(treeList1.Columns[0],k.Keshi1);//设置节点的显示为科室的名字字段
node1.Tag = k.KeshiBianhao;//保存科室 编号用于判断在二级目录中的记录的父节点是否是该节点
LoadSecondNode(node1);//调用方法加载子节点
}
}
public void LoadSecondNode(TreeListNode node)
{
foreach (var y in Control.SelectYisheng())
{
if (y.KeshiBianhao == int.Parse(node.Tag.ToString()))//判断医生表里的科室编号是否与父节点的科室编号相同
{
TreeListNode node2 = treeList1.AppendNode(null, node);//设置该节点的父节点为上层传过来的节点
node2.SetValue(treeList1.Columns[0],y.Yisheng1);
node2.Tag = y.YishengBianhao;
LoadThirdNode(node2);
}
}
}
public void LoadThirdNode(TreeListNode node)
{
foreach (var b in Control.SelectBingren())
{
if (b.GuahaoYisheng == int.Parse(node.Tag.ToString()))
{
TreeListNode node3 = treeList1.AppendNode(null, node);
node3.SetValue(treeList1.Columns[0], b.Xingming);
node3.Tag = b.Shenfenzhenghao;
}
}
}
#endregion