/// <summary> /// insert child node to one node(this). /// </summary> /// <param name="name">new child node name.</param> /// <param name="path"></param> /// <param name="newnode">can be null. no use I think.</param> /// <returns></returns> public virtual MultTreeNode InsertNode(string name, string path = "", MultTreeNode newnode = null) { MultTreeNode pntnode = this; if (newnode == null) { newnode = new MultTreeNode(); } if (path.Length > 0) { pntnode = findNodeByPath(path); } if (pntnode == null) { return(null); } // check if has same node with same name. // can not insert two same name node under one parent node. // 2016-03-04 09:38:33 if (pntnode.ExistChildNode(name)) { return(pntnode); } newnode.setNodeName(name); newnode.parentNode = pntnode; pntnode.InsertChildNode(newnode); return(newnode); }
/// <summary> /// TreeNodeData返回TreeNode /// </summary> /// <returns></returns> public MultTreeNode ToTreeNode() { #region 无用代码 //TreeNode ToTreeNode = new TreeNode(this.Text, this.ImageIndex, this.SelectedImageIndex); #endregion MultTreeNode ToTreeNode = new MultTreeNode(); #region 无用代码 // ToTreeNode.Checked = this.Checked; #endregion ToTreeNode.Obj = this.Tag; ToTreeNode.SelfId = this.Name; ToTreeNode.NodeName = this.Text; //ToTreeNode.setNodeName(this.Text); // ToTreeNode.setSelfId(this.Name); #region 无用代码 #region 无用代码 //ToTreeNode.setParent(this.Parent); //ToTreeNode.setParentNode(this.parentNodes); #endregion #region 无用代码 //if (this.Expanded) //{ // ToTreeNode.Expand(); //} #endregion #endregion if (this.Nodes == null && this.Nodes.Length == 0) { return(null); } if (ToTreeNode != null && this.Nodes.Length == 0) { return(ToTreeNode); } for (int i = 0; i <= this.Nodes.Length - 1; i++) { #region 无用代码 // ToTreeNode.Nodes.Add(this.Nodes[i].ToTreeNode()); // ToTreeNode.getChildList().Add(this.Nodes[i].ToTreeNode()); #endregion ToTreeNode.InsertChildNode(this.Nodes[i].ToTreeNode()); } return(ToTreeNode); }