0

動的に拡張するツリー ビューとして機能させたいリストがありますが、リスト内に複数のリストを含める場合は、最初のリストの定義でそれを宣言する必要があります。これを達成するために何が欠けていますか?私の目標を達成するために使用するより良いものはありますか?

コンテキストのために、アプリケーション内でレジストリを複製できるように、ツリー ビューのように設定しようとしています。

4

1 に答える 1

1

シナリオに適したタイプを使用してください。

TreeNodeあなたの場合、これは次のようなクラスです:

public class TreeNode
{
    private readonly List<TreeNode> _children = new List<TreeNode>();

    public TreeNode(string name, params TreeNode[] children)
    {
        Name = name;
        _children.AddRange(children);
    }

    public List<TreeNode> Children { get { return _children; } }
    public string Name { get; set; }
}

次のツリーを想定します。

Root
+ Child1
  + Child1a
  + Child1b
+ Child2
  + Child2a
    + Child2aA
    + Child2aB
  + Child2b

次のように作成します。

var root = new TreeNode("Root",
                        new TreeNode("Child1",
                                     new TreeNode("Child1a"),
                                     new TreeNode("Child1b")),
                        new TreeNode("Child2",
                                     new TreeNode("Child2a",
                                                  new TreeNode("Child2aA"),
                                                  new TreeNode("Child2aB")),
                                     new TreeNode("Child2b")));
于 2013-07-10T15:03:33.073 に答える