private DigiPower.ERM.Model.Cell_Templet Command_GetModel(DataRowView tRow) { DigiPower.ERM.Model.Cell_Templet M_Cell_Templet = new DigiPower.ERM.Model.Cell_Templet(); M_Cell_Templet.id = tRow["id"].ToString(); //节点唯一ID M_Cell_Templet.title = tRow["title"].ToString(); //标题 M_Cell_Templet.filepath = tRow["filepath"].ToString(); //华表路径 M_Cell_Templet.examplepath = tRow["examplepath"].ToString(); //范例文件 M_Cell_Templet.codeno = tRow["codeno"].ToString(); //表格代码 M_Cell_Templet.codetype = Convert.ToInt32(tRow["codetype"]); //结点类型 M_Cell_Templet.customdefine = Convert.ToInt32(tRow["customdefine"]); //用户自定义 M_Cell_Templet.fbmc = tRow["fbmc"].ToString(); //分部名称 M_Cell_Templet.fxmc = tRow["fxmc"].ToString(); //分项名称 M_Cell_Templet.isvisible = Convert.ToInt32(tRow["isvisible"]); //是否可见 M_Cell_Templet.orderindex = Convert.ToInt32(tRow["orderindex"]); //顺序号 M_Cell_Templet.parentid = tRow["parentid"].ToString(); //父节点ID M_Cell_Templet.ys = Convert.ToInt32(tRow["ys"]); //页数 M_Cell_Templet.zfbmc = tRow["zfbmc"].ToString(); //子分部名称 M_Cell_Templet.zrr = tRow["zrr"].ToString(); //责任人 M_Cell_Templet.projectno = CPROJECTNO; //工程编号 return(M_Cell_Templet); }
/// <summary> /// 获取树的节点,跟其他方法合用 /// </summary> /// <param name="nodes">TreeNodeCollection</param> /// <param name="nodeID">要查询的节点</param> private void LoadChildNodes(TreeNodeEx pParentNode, string parentID, bool withImage, bool IsAll) { if (ds == null) { return; } DataView dataView = new DataView(ds.Tables[0]); dataView.RowFilter = "ParentID='" + parentID + "'"; TreeNodeEx[] tNodes = new TreeNodeEx[dataView.Count]; int tNodesCount = 0; foreach (DataRowView drv in dataView) { TreeNodeEx node = new TreeNodeEx(); if (this.Command_IsSelectFile(Convert.ToInt32(drv["imageindex"]))) { DigiPower.ERM.Model.FileRecording_Templet M_FileRecording_Templet = this.Command_GetFile(drv); //获取文件对象模型 node.Name = M_FileRecording_Templet.id; //节点唯一ID,用来检索 node.Text = M_FileRecording_Templet.gdwj; //标题 node.Tag = M_FileRecording_Templet; //是否最后一个节点,范例路径,是否用户定义表格,附件 node.Checked = M_FileRecording_Templet.isvisible == 1 ? true : false; //是否可见 } else if (this.Command_IsSelectModel(Convert.ToInt32(drv["imageindex"]))) { DigiPower.ERM.Model.Cell_Templet M_Cell_Templet = this.Command_GetModel(drv); //获取文件对象模型 node.Name = M_Cell_Templet.id; //节点唯一ID,用来检索 node.Text = M_Cell_Templet.title; //标题 node.Tag = M_Cell_Templet; //是否最后一个节点,范例路径,是否用户定义表格,附件 node.Checked = M_Cell_Templet.isvisible == 1 ? true : false; //是否可见 node.NodeKey = M_Cell_Templet.codeno; node.NodeValue = M_Cell_Templet.filepath; } else if (this.Command_IsSelectRoot(Convert.ToInt32(drv["imageindex"]))) { DigiPower.ERM.Model.FileRecording_Templet M_FileRecording_Templet = this.Command_GetFile(drv); //获取文件对象模型 node.Name = M_FileRecording_Templet.id; //节点唯一ID,用来检索 node.Text = M_FileRecording_Templet.gdwj; //标题 node.Tag = M_FileRecording_Templet; //是否最后一个节点,范例路径,是否用户定义表格,附件 node.Checked = M_FileRecording_Templet.isvisible == 1 ? true : false; //是否可见 } if (withImage) { node.ImageIndex = Convert.ToInt32(drv["imageindex"]); node.SelectedImageIndex = Convert.ToInt32(drv["imageindex"]); } node.Text = drv["title"].ToString(); if (node.ImageIndex != 2) { if (IsAll) { LoadChildNodes(node, node.Name, true, true); node.IsFirstExpand = false; } else { TreeNodeEx node1 = new TreeNodeEx(); node1.Name = "临时数据"; node1.Text = "临时数据"; node.Nodes.Add(node1); } } tNodes.SetValue(node, tNodesCount++); } if (80 < tNodes.Length) //如果其含有的子节点数大于80个,启动BeginUpdate方法 { pParentNode.TreeView.BeginUpdate(); pParentNode.Nodes.AddRange(tNodes); pParentNode.TreeView.EndUpdate(); } else { pParentNode.Nodes.AddRange(tNodes); } }