Now I'm really confused. In stepping through the code, it looks like the _AjaxRequest method is not being called until after needdatasource is already called! This means the whole idea of showing the loading panel while the page is loading is not working because _NeedDataSource is the slow call.
So, when clicking to the page, you now see no loading panel while the slow part runs, then it flashes with the ajax load and it loads again, then displays.
The order seems to be as below. How can I make sure the _AjaxRequest is called before the NeedDataSource so that I can do the slow databind inside _AjaxRequest instead of before it?
Hard to send a sample app as the code is using MS EntLib4.1 and MVP approach.