/// <summary>
/// 初始化树形结构
/// </summary>
/// <param name="tv"></param>
public static void InitTmplTreeView(TreeView tv)
{
IList<Sys_Dictionary> list = BLLSvc.Dic.GetByGroupCode(Sys_Dictionary.CAE_BIZ_TYPE_GROUP_CODE); //获取父节点要绑定的数据
if (list == null)
{
return;
}
foreach (Sys_Dictionary item in list)
{
TreeNode tnTool = new TreeNode(item.Name) { Tag = item }; //父节点要显示的数值字段
tv.Nodes.Add(tnTool);
}
}
/// <summary>
/// 处理树形视图选择事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void tvTmpl_AfterSelect(object sender, TreeViewEventArgs e)
{
if (e.Node == null)
{
return;
}
GetChildrenWfCAETreeNodes(e.Node);
e.Node.ExpandAll(); //展开所有节点
}
/// <summary>
/// 获取子节点
/// </summary>
/// <param name="parentNode"></param>
public static void GetChildrenWfCAETreeNodes(TreeNode parentNode)
{
if (parentNode == null)
return;
parentNode.Nodes.Clear();
if (parentNode.Tag is Sys_Dictionary) //判断是节点的类型
{
string itemCode = BLLSvc.Dic.GetItemCode(Sys_Dictionary.CAE_BIZ_TYPE_GROUP_CODE, parentNode.Text);
//通过父节点的itemCode去寻找要关联的子节点
Wfm_Template findTmpl = new Wfm_Template();
findTmpl.CAETypeDic = itemCode;
IList<Wfm_Template> tmplList = BLLSvc.Tmpl.FindByEntity(findTmpl);//获取到子节点信息
foreach (Wfm_Template tmpl in tmplList)
{
TreeNode tr = new TreeNode(tmpl.Name) { Tag = tmpl };
parentNode.Nodes.Add(tr);
}
}
}