So let's think about this differently: just like it doesn't make much
sense to add 32K items to a dropdown...
Before loading said tree, I was estimating the size of the loaded tree
based on the input recordset - and issuing a warning if the number of
nodes was approaching the limit.
Turned out that my estimating code was way pessimistic - mainly bc it
was double-counting something in a loop.
Your observation is right on the money time-wise..... this tree was
actually only 6,000+ nodes and the estimate was 29,000.
Another approach would be to do a virtual tree: it is initially
populated with only the first-level nodes. Only if the user drills in
are the needed nodes quickly added (one level at a time). This would
likely avoid you ever getting up to 32K nodes.
I like this a *lot*.... and will try to implement it.
With 6,000 nodes, the time to load the tree is beyond what I (as a
closet type A) would consider acceptable.
Even with fewer nodes (the user has options.... 6,000 is the result of
the user choosing "All") , faster still has tb better.