3

我需要填充TreeNode.ChildNodeson 事件TreeView.TreeNodeExpanded。问题是在事件被触发之前节点是空的,在这种情况下它是不可展开的,并且它旁边没有显示展开图标[+]

我想让节点可扩展,以防其相关对象有一些子对象而不将这些子对象添加到节点。

我想过在节点中添加一个虚拟子节点,并在展开时将其删除。有没有更好的选择??

谢谢你。

4

3 回答 3

3

三步搞定:

1 - 将TreeView.ExpandDepth设置为0。这消除了在 中添加的TreeNode对象的扩展,并在属性设置为true的每个对象旁边TreeView显示扩展符号[+]TreeNodeTreeNode.PopulateOnDemand

2- 将每个分支的TreeNode.PopulateOnDemand设置为True。当集合为时,扩展符号[+]将仅显示在属性设置为true的对象旁边。 TreeNodeTreeNode.ChildNodesTreeNodeTreeNode.PopulateOnDemand

3- 处理TreeView.TreeNodePopulate事件以在展开时填充分支节点。当 a TreeNode-TreeNode.PopulateOnDemand设置为true - 在事件被触发之前被展开时,这个TreeView.TreeNodeExpanded事件将被触发。

于 2011-07-14T11:49:45.340 回答
0

不确定,也没有时间尝试,但我猜你想要的是TreeNode.PopulateOnDemand属性和TreeView.TreeNodePopulate事件。

于 2011-07-12T13:15:33.567 回答
0

我建议编辑节点的模板。看看An ASP.NET AJAX TreeView control with templates

于 2011-07-12T08:12:46.953 回答