0

Treeview コントロールのノードに Matrix のような名前を付けることは可能ですか?

例えば:

Parent Node
   --> Child Node
       --> Grand child node
Other Parent Node

こんな感じ

-- Node1
   --> Node11
       --> Node111
       --> Node112
         --> Node1121
   --> Node12
   --> Node13
-- Node2

btnAddNodeボタンをクリックしてノードと子ノードを追加してbtnAddChildNode
いますが、ノードが子であるか親であるかをキャッチしていないカウンター値をインクリメントしています(インクリメントするだけです

4

2 に答える 2

2

最も簡単な解決策は、これら 2 つの単純な方法を使用することです。1 つ目は TreeNodes を TreeView コントロールに追加し、2 つ目は既に追加されているノードに子ノードを追加します。

public void AddNode(TreeView parent, string text)
{
    if (parent != null)
    {
         parent.Nodes.Add(new TreeNode(text + (parent.Nodes.Count + 1).ToString()));
    }
}
public void AddChildNode(TreeNode parent)
{
    if(parent != null)
    {
         string number = parent.Text;
         parent.Nodes.Add(new TreeNode(number + (parent.Nodes.Count + 1).ToString()));   
    }
}

そして、それが機能しているかどうかを確認するには、次のようにします。

AddNode(treeView1, "Node");
AddNode(treeView1, "Node");
AddNode(treeView1, "Node");
AddChildNode(treeView1.Nodes[0]);
AddChildNode(treeView1.Nodes[0]);
AddChildNode(treeView1.Nodes[0]);
AddChildNode(treeView1.Nodes[1]);
AddChildNode(treeView1.Nodes[2]);
AddChildNode(treeView1.Nodes[2]);
于 2012-10-30T11:14:31.600 に答える
0

btnAddNode と btnAddChildNode の違いは何ですか? ルート ノードは btnAddNode で追加され、他のすべての子ノードは btnAddChildNode で追加されていますか?

主に、次のコードのように sth を使用して、追加するノードの深さを確認できます。

   counter = 0 ; 
   while (node.Parent != null)
   {
       node = node.Parent;
       counter++;
   }
于 2012-10-30T11:13:45.830 に答える