tagCANDY CGI VBレスキュー(花ちゃん) の Visual Basic 2010 用 掲示板(VB.NET 掲示板)
VBレスキュー(花ちゃん) の Visual Basic 2010 用 掲示板(VB.NET 掲示板)
[ツリー表示へ]  [ワード検索]  [Home]

タイトル 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

- 関連一覧ツリー をクリックするとツリー全体を一括表示します)

古いスレッドにレスはつけられません。