タイトル : Re: もう一度整理して冷静に考えてみました。 投稿日 : 2009/05/20(Wed) 10:28 投稿者 : 魔界の仮面弁士
あれ、分かりやすい詳細な追加解説が書かれていたと思っていたのですが、 今日見たら、説明文が削除されていますね。 # 日付指定の Format の仕方に問題があったので、指摘しようと思っていたのですが。 > 特に、XXX1、XXX2、XXX3の下層に複数のノードを追加すると、その下層のノードを選択して移動させる必要がある事を頭に入れていませんでした。 ノードを移動させると、その子孫階層のノードも一緒に移動する事になりますから、 子孫ノードを一緒に移動させたいかどうかが肝になりますね。 たとえば、No.8978 の ┣Node1 ┃┣Node4 ┃┃┣Node10 ┃┃┗Node11 ┃: ┃┗Node5 ┃ ┣Node12 ┃ ┗Node13 ┣Node2 ┃┣Node6 ┃┗Node7 ┗Node3★ ┣Node8 ┃┣Node14 ┃┗Node15 ┗Node9 ┗Node16 に対して下記の 4 行を実行すると、★のノード(Node3) がNode1 配下の : の場所に移動します。 Dim Node3 As TreeNode = TreeView1.Nodes(2) Dim Node1Children As TreeNodeCollection = TreeView1.Nodes(0).Nodes Node3.Remove() Node1Children.Insert(1, Node3) この結果は、下図の☆のようになります。 Node3 配下のノードもまとめて移動していますね。 ┣Node1 ┃┣Node4 ┃┃┣Node10 ┃┃┗Node11 ┃┣Node3☆ ┃┃├Node8 ┃┃│├Node14 ┃┃│└Node15 ┃┃└Node9 ┃┃ └Node16 ┃┗Node5 ┃ ┣Node12 ┃ ┗Node13 ┗Node2 ┣Node6 ┗Node7 |