private int AddNode(ObservableCollection <CustomTreeNode> oc, CustomTreeNode cnAdd) { int iRet = -1; if (Nodes.Count == 0) { Nodes.Add(cnAdd); return(0); } foreach (CustomTreeNode cn in oc) { if (cn.IsSelected) { if (cn.MaxNodesCount == cn.Nodes.Count) { return(0); } cn.Nodes.Add(cnAdd); return(0); } else if (cn.Nodes != null || cn.Nodes.Count > 0) { iRet = AddNode(cn.Nodes, cnAdd); if (iRet == 0) { return(0); } } } return(-1); }
public void Add() { CustomTreeNode cnAdd = new CustomTreeNode(); cnAdd.Name = "TEST" + this.Nodes.Count; cnAdd.Tag = "これはテストです。その" + this.Nodes.Count; AddNode(Nodes, cnAdd); }