0

ツリービューに SampleNode を追加しました。

SampleNode からいずれかのノードを削除すると、

お気に入り、

TreeNode[] nodes = this.SampleNode.Nodes.Find(node.Text, true);
      if (nodes.Length > 0)
      {
        int j = nodes[0].Index;
        if (nodes.Length > 0)
          this.SampleNode.Nodes[j].Remove();
      }

ツリービューでは削除されますが、SampleNode では削除されません。なぜこれが起こるのですか?

解決策は何ですか?

4

2 に答える 2

1

問題は、ツリー内の位置ではなく、ノード配列内のインデックスによってノードを削除していることです。

置き換えてみてください:

this.SampleNode.Nodes[j].Remove();

と:

this.SampleNode.Nodes.Remove(nodes[0]); 
于 2011-01-10T05:51:05.437 に答える
0

いくつかのノードを追加するコード。

 TreeNode root = new TreeNode("Root");

 root.Nodes.Add("1", "Sampl1");
 root.Nodes.Add("2", "Sampl2");
 root.Nodes.Add("3", "Sampl3");
 treeView1.Nodes.Add(root);

ノードを検索して削除するコード、

TreeNode []nodes= treeView1.Nodes.Find("1", true);

 if (nodes.Length != 0)
  {
    //nodes[0].Remove();
    //or
    treeView1.Nodes.Remove(nodes[0]);
  }
于 2011-01-10T06:02:35.243 に答える