TreeView(ノードの追加2)
どのノードに子を付けたいのか、あるいは親ノードになりたいのか、兄弟ノードになりたいのか、そこらへんを意識していないと話がよくわからなくなる。今回は、”今記憶している物が親ノード”で子ノードを追加する場合と、今作成したノードを親ノードに指定する方法を試した。
ひとまず、親を得る方法から。
TreeNode parent = TreeView.Nodes[0]; TreeNode parent = (TreeNode).Nodes[index]; TreeNode parent = TreeView.SelectedNode; TreeNode parent = (TreeNode).Parent;
どのノードであるかを明示的に指定しなければいけない。Nodesプロパティーをそのまま渡そうとしたら失敗した。あと、ParentとかPrevNodeなどの指定もできるらしい。その際、エラー処理を忘れず。
親ノードに子ノードを追加するのは容易、というか基本か。親ノードとして、今のノードの親ノードを指定すると、新しいノードは今のノードの兄弟になることがおわかりになりますでしょうか。私は混乱してきました。
parent.Nodes.Add(new TreeNode(text));
最後に、たった今作成・追加したノードを得る。
TreeNode newNode = new TreeNode(text); int nowNodeIndex = parent.Nodes.Add(newNode); TreeNode nowNode = parent.Nodes[nowNodeIndex]; TreeNode nowNode = newNode;
これであなたもツリービューが使えるように?