Yes, I have 3000+ nodes I need to display in the tree. Everything works great in Firefox, but when I try to view the page in IE, I get this message:
============================================Stop running this script?
A script on this page is causing Internet Explorer to run slowly.If it continues to run, your computer may become unresponsive.============================================
Any ideas or thoughts on how to fix this or improve it? I know its due to the WebDataTree's initialization. It is looping through and initializing each node... something that isn't working out well for IE due to its slower javascript performance.
Infragisitics version: 9.1.20091.2101Language: C#OS: Windows Vista 32-bitBrowsers: IE7 and FireFox 3.5.3
Hi,
Yes, this is initialization issue as you already mentioned.
I would suggest you to use load-on-demand (set InitialDataBindDepth to zero), that will improve the overall performance and initial load of the page.
Yes, that does sound like a reasonable solution, however, I can't do that with my data. I failed to mention that we also need to be able to search and find a node in the tree based off of some text entered into an input box. I have the search working and I am able to find nodes quickly, but I don't know how to get it to work if I have Ajax loading enabled as the nodes are not loaded into the browser yet. I'm trying to avoid unnecessary complications with the search. Any ideas other than working with load on demand?
Yes, implementing client-side search for the tree surely adds some more complexity to the solution.
Unfortunately even if we have lazy initialization of the nodes (initialize a node object the first time it is accessed), in your case there still will be performance issues once you start searching the tree, because the nodes initialization will take place then...
Have you considered the option to implement the search on the server side, directly in the data base?
Yes, I could do the search on the server-side, but how could I open to the node with the corresponding data on the client once its found? Or do you have other thoughts on how to indicate which node was found?
That's the tricky part and there may be different solutions.
Once you have the data base item you're searching for, you can go through its parent items reaching the root item of the current branch. Then you can fill each node's children in reverse order until you reach the searched item (node) and select it...
If you encounter difficulties with that, you can send me the sample project with the server side searching implemented and will try to implement the populating of required nodes.