private DictTypeNodeInfo GetNode(Int32 id, DataTable dt) { DictTypeInfo DictTypeInfo = this.FindByID(id); DictTypeNodeInfo DictTypeNodeInfo = new DictTypeNodeInfo(DictTypeInfo); DataRow[] dChildRows = dt.Select(string.Format(" PID={0} ", id)); for (int i = 0; i < dChildRows.Length; i++) { Int32 childId = Convert.ToInt32(dChildRows[i]["ID"]); DictTypeNodeInfo childNodeInfo = GetNode(childId, dt); DictTypeNodeInfo.Children.Add(childNodeInfo); } return(DictTypeNodeInfo); }
private DictTypeNodeInfo GetNode(string id, DataTable dt) { DictTypeInfo DictTypeInfo = this.FindByID(id); DictTypeNodeInfo DictTypeNodeInfo = new DictTypeNodeInfo(DictTypeInfo); DataRow[] dChildRows = dt.Select(string.Format(" PID='{0}' ", id)); for (int i = 0; i < dChildRows.Length; i++) { string childId = dChildRows[i]["ID"].ToString(); DictTypeNodeInfo childNodeInfo = GetNode(childId, dt); DictTypeNodeInfo.Children.Add(childNodeInfo); } return(DictTypeNodeInfo); }
private void AddTree(TreeNode pNode, DictTypeNodeInfo info) { TreeNode node = null; if (info.Pid == -1) { node = new TreeNode(info.Name, 1, 1); node.Tag = info.Id; this.treeView1.Nodes.Add(node); } else { node = new TreeNode(info.Name, 1, 1); node.Tag = info.Id; pNode.Nodes.Add(node); } foreach (DictTypeNodeInfo subInfo in info.Children) { AddTree(node, subInfo); } }
public List <DictTypeNodeInfo> GetTree() { List <DictTypeNodeInfo> typeNodeList = new List <DictTypeNodeInfo>(); string sql = string.Format("Select * From {0}DictType Order By PID, Seq ", OraclePortal.gc._basicTablePre); Database db = CreateDatabase(); DbCommand cmdWrapper = db.GetSqlStringCommand(sql); DataSet ds = db.ExecuteDataSet(cmdWrapper); if (ds.Tables.Count > 0) { DataTable dt = ds.Tables[0]; DataRow[] dataRows = dt.Select(string.Format(" PID = {0} ", -1)); for (int i = 0; i < dataRows.Length; i++) { Int32 id = Convert.ToInt32(dataRows[i]["ID"]); DictTypeNodeInfo DictTypeNodeInfo = GetNode(id, dt); typeNodeList.Add(DictTypeNodeInfo); } } return(typeNodeList); }
public List <DictTypeNodeInfo> GetTreeByID(string mainID) { List <DictTypeNodeInfo> typeNodeList = new List <DictTypeNodeInfo>(); string sql = string.Format("Select * From {0} Order By PID, Seq ", this.tableName); Database db = CreateDatabase(); DbCommand cmdWrapper = db.GetSqlStringCommand(sql); DataSet ds = db.ExecuteDataSet(cmdWrapper); if (ds.Tables.Count > 0) { DataTable dt = ds.Tables[0]; DataRow[] dataRows = dt.Select(string.Format(" PID = '{0}' ", mainID)); for (int i = 0; i < dataRows.Length; i++) { string id = dataRows[i]["ID"].ToString(); DictTypeNodeInfo DictTypeNodeInfo = GetNode(id, dt); typeNodeList.Add(DictTypeNodeInfo); } } return(typeNodeList); }