Posted 20 Nov 2012
Link to this post
I have a RadTreeView inside a RadAjaxPanel, and I drag&drop items onto another RadTreeView, or a RadPane. What i have done is instead of subscribing to the server side OnNodeDrop, capture the OnClientNodeDropping of the treeView, and then make an ajax call through ajaxPanel.ajaxRequest.
It seems that the when I am sending the ajax calls from the treeview with my ajaxPanel.ajaxRequest, they travel through a different ajax channel, because, first of all, the loading panel doesn't show, and also only the other treeView on the page refreshes. The server does receive the call, though. If the drop is on the RadPane, or any other html element for that matter, no refresh happens at all.
Now, here's the interesting part. I have another treeview with a similar functionality which works just fine. I started making the two treeViews look each other by eliminating the differences, and found out that if I set the OnNodeExpand event handler for the treeView, this issue arises, and if I remove that, everything works alright.
In a nutshell, if the OnNodeExpand event handler is added to the treeview, ajax calls that are initiated from the treeView and go through ajaxPanel or ajaxManager, do reach the server, but do not refresh the intended controls on return. The only exception seems to be other treeViews on the page, which are refreshed correctly, but without showing the LoadingPanel.
I hope this is not too confusing.