這是一個System.Windows.Forms.TreeView,而不是WPF或Web TreeView。在.NET中延遲加載TreeView
我必須失去了一些東西,因爲我無法相信這是困難的。
我有我的窗體上一個TreeView。加載所有數據以填充TreeView非常緩慢,因此我只想加載頂級節點,然後在用戶擴展節點時填充子節點。問題是,如果一個節點沒有任何子節點,它不會在節點旁邊顯示+符號,這意味着它不能被擴展,這意味着我不能捕獲一個Expanding事件來加載子節點。
幾年前,當我使用PowerBuilder時,您將HasChildren(或類似)屬性設置爲true,以基本上對控件進行「撒謊」並強制顯示+,然後您可以捕獲展開事件。當沒有子節點時,我無法弄清楚如何強制+出現在節點上。
我已經試過的方法,我的虛擬節點添加到每個節點,然後擴大檢查,如果虛擬節點存在,並刪除然後將其加載的孩子,但對於那些不值得進入這裏各種原因該解決方案在我的情況下不可行。
我GOOGLE爲C#,樹視圖,延遲,延遲,負載,力,擴展各種組合,而逃避我現在沒有運氣一些其他條款。
P.S.我在SourceForge上找到了TreeViewAdv項目,但是如果我可以避免的話,我寧願不將新組件引入到我們的環境中。
我一直使用虛擬節點方法;它一般工作得很好。你能告訴我們更多關於爲什麼它不適合你嗎? – Charlie 2009-04-29 02:00:19