當(dāng)父節(jié)點處于展開狀態(tài)時添加節(jié)點

2017-09-15 14:56:55
黃善超
3539
最后編輯:tmtony8 于 2017-09-15 15:24:52

       在某些事例中,你可能需要僅可見的節(jié)點添加至控件,當(dāng)父節(jié)點處于展開狀態(tài),父節(jié)點的子項添加至控件。這對于你有大量數(shù)據(jù)是很有用處的,它將花費控件太長的時間去裝載所有數(shù)據(jù)。

除非你添加子節(jié)點至控件, 否則控件不會顯示作為父項的父節(jié)點。為彌補(bǔ)這點, 你必須靠使用NodeIsParent方法告知控件此節(jié)點是父節(jié)點。

例:

ctTree.AddNode "Pseudo Parent", 2, 1
ctTree.NodeIsParent( ctTree.Selected ) = TRUE

 

注意: 當(dāng)你以上面的方式使一個節(jié)點成為父節(jié)點時,必須注意如果你不正確的控制你的父節(jié)點, 控件將不能以期望的方式顯示數(shù)據(jù)。

此時, 控件與可視數(shù)據(jù)一起裝載,所有的偽父節(jié)點必須打上真值父標(biāo)志。下一步是檢查展開事件以決定要被展開的節(jié)點是否有子項。如果沒有,我們必須為父節(jié)點加載新的節(jié)點。 以下代碼必須放置在控件的展開事件中。

 

If (ctTree.Children(nIndex) = 0) Then
        ctTree.Selected = nIndex
        For nCntr = 1 To nMaxItems
            ctTree.AddNode ("Item"), 2, 2
        Next
        ctTree.Selected = nIndex
End If

移動訪問