2013-02-15 30 views
-1

I'm新手,和我不能查看树节点和树节点之间的差[],返回错误是TreeNode和TreeNode []之间的区别?

"Cannot implicitly convert type 'System.Windows.Forms.TreeNode[]' to'System.Windows.Forms.TreeNode' 
+0

感谢编辑春天! – JMG 2013-02-15 10:03:42

+0

为什么减去这个?如果你是C#的新手(或generel的编程),它不是很狡猾。 – 2013-02-15 10:05:54

回答

1

树节点和树节点[]是不同的。 TreeNode是单个节点,而TreeNode []是TreeNode的数组。

ForExample:

TreeNode(String, TreeNode[])它是树节点的一个重写的构造函数。

public TreeNode(
    string text, 
    TreeNode[] children 
) 

您不能直接将TreeNode []转换为TreeNode,而是通过调用单个通过索引。

1

[]表明它是一个数组,即树节点的集合...

+0

收藏珍藏.......一点也不。 – 2013-02-15 09:57:39

1

的括号[]表示的阵列。看起来你的方法返回一个TreeNode对象数组,但你只分配一个TreeNode对象。

2

TreeNode表示“一个TreeNode对象”。 TreeNode[]的意思是“树节点的集合(阵列)”

`TreeNode t = new TreeNode()` 

其中的数组必须是这个样子:

TreeNode[] ary = new TreeNode[1]; 
    ary[0] = new TreeNode(); 

    //and vice versa 

    TreeNode t = ary[0]; 
0

这的确是哈比卜说什么。 []表示它是一个array返回的错误说明了您尝试将TreeNodes数组放入单个TreeNode的事实。这不可能是真的。

如果你做这样的事情

TreeNode[] nodes = new TreeNode[2]() {new TreeNode(), new TreeNode()} 
TreeNode node = nodes[0] //This will put the first TreeNode from nodes in the node 

我希望这有助于