/// <summary> /// 获取树的节点,跟其他方法合用 /// </summary> /// <param name="nodes">TreeNodeCollection</param> /// <param name="nodeID">要查询的节点</param> /// 用递归的方法读取树 /// </summary> /// <param name="treeView">需要把数据绑定到的TreeView控件</param> /// <param name="tableName">树的数据所在的表</param> public void GetFileTree(TreeView treeView, string fileRecording_templet, string cell_tempet, bool withImage, string projectNo, bool IsCount, bool isAll, FileStatus treeEnum) { treeView.Nodes.Clear(); ERM.CBLL.FileRegist cbll = new ERM.CBLL.FileRegist(); if (treeEnum == FileStatus.Full) { ds = cbll.RegistGetNewFileRecording_Templet(projectNo); } else { ds = FilterData(ds, treeEnum); } CellTreesData treesData = new CellTreesData(); dsArchive = treesData.GetArchives(projectNo); if (ds != null) { DataView dataView = new DataView(ds.Tables[0]); dataView.RowFilter = "id='01'"; if (dataView.Count == 0) { return; } string nodeID = ""; string title = ""; string codeno = ""; int imageindex = 0; TreeNodeEx node; nodeID = dataView[0]["ParentPath"].ToString(); //节点唯一ID title = dataView[0]["title"].ToString(); //标题 codeno = dataView[0]["id"].ToString(); //表格代码 node = new TreeNodeEx(); node.Name = "01"; //节点唯一ID,用来检索 node.Text = title; //标题 if (withImage) { node.ImageIndex = imageindex; node.SelectedImageIndex = imageindex; } treeView.BeginUpdate(); treeView.Nodes.Add(node); if (string.IsNullOrEmpty(nodeID)) { nodeID = dataView[0]["treepath"].ToString(); } LoadFileChildNodes(node.Nodes, codeno, withImage, IsCount, isAll); treeView.EndUpdate(); treeView.Nodes[0].Expand(); ds = null; } }
private DataSet FilterDataWithNoNode(DataSet NewData) { ERM.CBLL.CellTreesData CBLL = new CellTreesData(); List <string> list = new List <string>(); DataRow[] rows = NewData.Tables[0].Select("imageindex = 2"); if (rows.Length > 0) { list = FilterDataByPath(rows, list, NewData); string path = SetList2SqlIn(list); DataRow[] NewRows = NewData.Tables[0].Select("treepath not in (" + path + ")"); foreach (DataRow dr in NewRows) { NewData.Tables[0].Rows.Remove(dr); } return(NewData); } return(null); }