views:

35

answers:

1

I've googled this to death and can't find anything that points me in the right direction so any help would be much appreciated!

I want to generate a report that consists of X no. of gridviews (X can vary) where each gridview is added one at a time using ajax (to avoid timeout of rendering all gridviews in single post back). I am also hoping that when rendering the next gridview a progress bar/timer can also appear in it's place until it's finished processing and is rendered.

Does anyone know how I might tackle this? I wouldn't have a problem doing this in a single post back but now the reports are timing out I need to generate the report piece by piece dynamically.

Thanks in advance!

A: 

Why don't you divide the page into different sections and load each section individually.

Are your gridviews interdependent..?

Ravia
That sounds very similar to an idea I had yesterday evening but not sure if it's practical.The gridviews are independent so I will want each individual gridview to page, sort and work independently from the rest of the page.If I knew I was dealing with X no. of gridviews I could create X no. of iframes on my main page and within each iframe I could load a singe gridview. This would mean I could re-use the same page for each iframe.I'm just trying to come with a more efficient way of generating my reports instead of the usual single post back which is timing out.
Chris D
Why not add Separate Panels containing GridView and each Panel will show loading image till the GridView is loaded with your data.
Ravia
I assume you mean the ajax updatepanel? if so, since the no. of gridviews needed can vary, how can I dynamically add these to the page using ajax/clientscript where as you suggest, each one generates it's own gridview? Scenario being: Report page has loaded, I configure the parameters and then click create report. Below, depending on the parameters selected it will generate x no. of gridviews in sequence (each on loading indepedent on one another).Am I talking nonsense?
Chris D