2012-03-09 82 views
0

我想構建一個動態樹視圖,當用戶點擊其中一個插件時,它將被填充。在我的數據庫中,我擁有像父母和孩子一樣工作的記錄,因此記錄鏈接到其父記錄並鏈接到其所有子記錄(我認爲數據庫的工作方式不相關,所以我不會解釋)。問題是一些記錄可能有高達1000000個子記錄,並且您可以看到一次加載所有記錄可能會導致一些問題,因爲您可能一次加載數百萬個節點。asp.net異步樹視圖

所以我想知道是否有人有一些關於treeviews的教程。

+0

一個初始問題,您如何期望以任何可訪問的方式呈現1,000,000條兒童記錄?你正在尋找的模式是延遲加載。 – Lazarus 2012-03-09 10:59:30

+0

LOL我可能已經有了一百萬張兒童唱片,但我可以看到你從哪裏來的時候顯示那麼多的唱片。 – c11ada 2012-03-09 11:09:37

回答

3

1 - 將TreeView.ExpandDepth設置爲0。這消除了TreeView中添加的TreeNode對象的擴展,並在TreeNode.PopulateOnDemand屬性設置爲true的每個TreeNode旁邊顯示擴展符號[+]。

2-爲每個分支TreeNode設置TreeNode.PopulateOnDemandTrue。當TreeNode.ChildNodes集合爲空時,擴展符號[+]將僅顯示在具有TreeNode.PopulateOnDemand屬性設置爲true的TreeNode對象旁邊。

3-處理TreeView.TreeNodePopulate事件以擴展分支節點。當TreeNode - TreeNode.PopulateOnDemand設置爲true - 在TreeView.TreeNodeExpanded事件被觸發之前已經被擴展,此事件將被觸發。

+0

我想做類似這樣的事情......但我不想使用任何第三方的東西.​​.....我真的想自己創造這個。 – c11ada 2012-03-09 11:08:46