【发布时间】:2016-12-03 09:03:40
【问题描述】:
我一直在查看documentation 并阅读有关该主题的帖子,但仍未找到答案
currentTREENODE = treeviewResults.TopNode
For Each item As String In incomingList
If treeviewResults.Nodes.ContainsKey(item) Then
currentTREENODE = treeviewResults.Nodes.Find(item, True)(0)
Else
newNode = New TreeNode(item)
newNode.Name = item
currentTREENODE.Nodes.Add(newNode)
End If
Next
我一开始以为 Collection 没有立即更新,所以我尝试了 BeginUpdate() 和 EndUpdate()、Update()、Refresh() 但这并没有解决问题
【问题讨论】:
-
你想做什么?你没有在任何地方使用
nextTREENODE,只是分配它 -
清理了一些
-
你想做什么? 如果节点已经存在(不需要 IF 部分),它不会做任何事情。 TopNode 是第一个可见节点,而不是根节点,这是你想要的吗?密钥与文本不同,因此看起来可能失败。
-
我没有意识到 containskey 不检查子节点。您是否看到 treeview.nodes.find(item,true) 无法确定树节点是否已经存在的任何原因?
标签: vb.net treeview refresh treenode containskey