This is a migrated thread and some comments may be shown as answers.

[Solved] Possible to make an Advanced Portal using RadTabStrip and RadDocks, all dynamic???

3 Answers 244 Views
General Discussions
This is a migrated thread and some comments may be shown as answers.
Fazeli
Top achievements
Rank 1
Fazeli asked on 26 May 2008, 06:44 PM
Hello,

I'm new to Telerik and am currently using the trial version of the framework. I would like to build a customizable portal site that makes use of a multi-tab interface with multiple docks+user controls on each tab/page (like NetVibes, Pageflakes, iGoogle).

For efficiency, I'd want to dynamically create the contents of each tab/page (i.e., the docks+user controls they'd contain). Ideally, upon first navigation to a tab, the content would be generated, and then cached.

Is this possible using Telerik's framework? Some idiosyncrasies of the framework seem to make it difficult to do. I have tried going through the existing Dynamic Docks, My Portal, and Load on Demand PageView demos to try and piece together how to achieve this effect but am unsure of the possibility.

Were RadDocks ever created to be this dynamic? Was RadTabStrip created for such a dynamic setup? Where these two pieces of the framework ever designed to work this intricately together? Would you attempt to maintain the "cache" using the Session object as seen in the demos (and push to DB for long term storage upon logout or some other departing trigger?)

Thanks for the help.

3 Answers, 1 is accepted

Sort by
0
Fazeli
Top achievements
Rank 1
answered on 26 May 2008, 07:27 PM
I've retracted this first reply ... I posted the contents in the RadDock forum instead. ...
0
Fazeli
Top achievements
Rank 1
answered on 27 May 2008, 09:01 PM
After working with the framework fruther, I've noticed the following challenges to creating a highly dynamic portal:

1. Tabs don't seem to behave correctly if there is an AsyncPostBackTrigger (in an UpdatePanel) linked to the TabStrip, but they work normally with a PostBackTrigger (not desirable).

2. Creating a dynamic portal that permits the creation of new tabs, each containing new dynamically created docks+user controls, is made difficult by the requirement of a hidden UpdatePanel. Having multiple UpdatePanels, especially in an unknown number of tabs seems difficult.

3. There is no server side TabSelected event that would allow for the dynamic loading of docks+user controls at the time a specific Tab is clicked. Furthermore, there's no immediate way to know if it's the first click. I guess by adding some private variables and code to the page, you can logically deduce which tab was clicked and whether it's the first click or not.

4. I'm not familiar with how best to "cache" the dynamically loaded docks so that you don't recreate them (and reload their user controls) each time a tab is clicked.

Can anyone help with these issues and suggest ways that I can proceed to use Telerik's RadDocks and RadTabStrips to create a highly dynamic portal (with variable # of tabs, variable # of dock zones, and varible # of docks, loaded on demand)?
0
Sophy
Telerik team
answered on 28 May 2008, 10:39 AM
Hello Fazeli,

Please, find below our suggestions to issues you experience:
  1. We already answered to the RadDock forum post concerning this issue. For your convenience I will go ahead and paste the answer here as well:
    The problem you experience is due to RadTabStrip not being updated when being clicked as it is a trigger to the invisible UpdatePanel and only its content is updated. To solve the problem I suggest you simply add the RadTabStrip and the corresponding RadMultiPage in another UpdatePanel. Please, find attached sample page demonstrating the scenario you describe and let me know in case you need further assistance.
  2. There is no problem to dynamically add tabs. You need to simply set the RadTabStrip as a trigger to the
    invisible UpdatePanel and add the RadTabStrip and the corresponding RadMultiPage in another UpdatePanel as explained above.
    Could you please provide more details why you need multiple UpdatePanels and what is the exact scenario you want to achieve?
  3. You can use the TabClick event to handle a new tab being selected and the Index property of the Tab to check which is the clicked tab, e.g - e.Tab.Index.
  4. In case a postback or a callback occurs on the page you need to recreate at Page_Init all previously added docks. You can save the docks' state at cookie,session or database depending on the needs on your scenario. 

If you have other questions, do contact us again. 

Sincerely yours,
Sophy
the Telerik team

Instantly find answers to your questions at the new Telerik Support Center
Tags
General Discussions
Asked by
Fazeli
Top achievements
Rank 1
Answers by
Fazeli
Top achievements
Rank 1
Sophy
Telerik team
Share this question
or