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

RadajaxloadingPanel over scrolled control

8 Answers 150 Views
Ajax
This is a migrated thread and some comments may be shown as answers.
Dave
Top achievements
Rank 1
Dave asked on 15 Jun 2012, 04:36 PM
Hey,

I have a RadTreeView inside a RadPane.  The RadPane has Scrolling="Y" and when the RadTreeView expands beyond the height of the Pane a scroll bar appears in the Pane and everything works great.  However, when the user checks/unchecks items in the TreeView there is an Ajax postback so I can display / hide information in other controls based on the selected items.  I have the TreeView as the AjaxControlID in an AjaxSetting as well as an AjaxUpdatedControl with the LoadingPanelID set. Like so:
<telerik:AjaxSetting AjaxControlID="tvwTermZone">
    <UpdatedControls>
        <telerik:AjaxUpdatedControl ControlID="tvwTermZone" LoadingPanelID="lPnlMain" />
    </UpdatedControls>
</telerik:AjaxSetting>

When the TreeView extends beyond the bottom of the RadPane the LoadingPanel is displayed over it's expanded size beyond the bottom of the scrolled RadPane, so that it shows over the cotrols that are in the RadPane below the Pane that contains the TreeView in it and the 'waiting' gif shows outside of the containing RadPane as well.  Is there any way to keep the LoadingPanel over the RadPane that holds the TreeView?

Thanks in Advance
Dave

8 Answers, 1 is accepted

Sort by
0
Maria Ilieva
Telerik team
answered on 20 Jun 2012, 02:00 PM
Hi Dave,

In this case possible option would be to ajaxify the whole RadPane and show the LoadingPanel over it covering the whole control. Another option is to center the LoadingPanel on the screen for every ajax request as shown in the help topic below:
http://www.telerik.com/help/aspnet-ajax/ajax-center-loadingpanel.html

All the best,
Maria Ilieva
the Telerik team
If you want to get updates on new releases, tips and tricks and sneak peeks at our product labs directly from the developers working on the RadControls for ASP.NET AJAX, subscribe to their blog feed now.
0
Dave
Top achievements
Rank 1
answered on 20 Jun 2012, 02:26 PM

> ajaxify the whole RadPane and show the LoadingPanel over it

If you mean change to the following:
<telerik:AjaxSetting AjaxControlID="myTreeView">
     <UpdatedControls>
         <telerik:AjaxUpdatedControl ControlID="RadPaneContainingTreeView" LoadingPanelID="lPnlMain" />
     </UpdatedControls>
 </telerik:AjaxSetting>

Not sure if I am doing something wrong, but I have never been able to 'ajaxify' a RadPane in a RadSpillter?  I always get the error:

Offending URL: http://localhost:49573/xxx/yyy.aspx
Source: Telerik.Web.UI
Message: SplitterItemsCollection must contain SplitterItem objects
Stack trace:
   at Telerik.Web.UI.SplitterItemsCollection.AddAt(Int32 index, Control child)
   at Telerik.Web.UI.RadAjaxControl.MoveUpdatePanel(Control initiator, Control updated)
   at Telerik.Web.UI.RadAjaxControl.PerformRender()
   at Telerik.Web.UI.RadAjaxControl.OnPageRender(HtmlTextWriter writer, Control page)
   at Telerik.Web.UI.RadAjaxControl.RenderPageInAjaxMode(HtmlTextWriter writer, Control page)
   etc...

Can a RadPane be 'ajaxified'?  If so, please let me know how...

It's just my personal choice but, I do not like to cover the entire page with loading panel when updating, but rather only the controls concerned...

So, I guess I just have to live with this shortcoming then?

Thanks,
Dave
0
Maria Ilieva
Telerik team
answered on 25 Jun 2012, 01:00 PM
Hi,

Please try adding the following settings and verify what the result is:
<telerik:AjaxSetting AjaxControlID="RadPaneContainingTreeView">
     <UpdatedControls>
         <telerik:AjaxUpdatedControl ControlID="RadPaneContainingTreeView" LoadingPanelID="lPnlMain" />
     </UpdatedControls>
 </telerik:AjaxSetting>


All the best,
Maria Ilieva
the Telerik team
If you want to get updates on new releases, tips and tricks and sneak peeks at our product labs directly from the developers working on the RadControls for ASP.NET AJAX, subscribe to their blog feed now.
0
Dave
Top achievements
Rank 1
answered on 25 Jun 2012, 01:35 PM

Hi,

Did you try this?  As I posted previous, I can NEVER put RadPanes into the AjaxManager stuff, the same error is always returned, can you send me a sample that allows one to be used this way?

I added:

<telerik:AjaxSetting AjaxControlID="pnlTermZone">
    <UpdatedControls>
        <telerik:AjaxUpdatedControl ControlID="pnlTermZone" />
    </UpdatedControls>
</telerik:AjaxSetting>

and got:

Offending URL: http://localhost:49573/Dispatch/Planning.aspx
Source: Telerik.Web.UI
Message: SplitterItemsCollection must contain SplitterItem objects
Stack trace:
   at Telerik.Web.UI.SplitterItemsCollection.AddAt(Int32 index, Control child)
   at Telerik.Web.UI.RadAjaxControl.MoveUpdatePanel(Control initiator, Control updated)
   at Telerik.Web.UI.RadAjaxControl.PerformRender()
   at Telerik.Web.UI.RadAjaxControl.OnPageRender(HtmlTextWriter writer, Control page)
   at Telerik.Web.UI.RadAjaxControl.RenderPageInAjaxMode(HtmlTextWriter writer, Control page)
   at System.Web.UI.Control.RenderChildrenInternal(HtmlTextWriter writer, ICollection children)
   at System.Web.UI.Control.RenderChildren(HtmlTextWriter writer)
   at System.Web.UI.Page.Render(HtmlTextWriter writer)
   at System.Web.UI.Control.RenderControlInternal(HtmlTextWriter writer, ControlAdapter adapter)
   at System.Web.UI.Control.RenderControl(HtmlTextWriter writer, ControlAdapter adapter)
   at System.Web.UI.Control.RenderControl(HtmlTextWriter writer)
   at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)

0
Maria Ilieva
Telerik team
answered on 28 Jun 2012, 01:03 PM
Hi,

The error is a result of not using the right controls with RadAjaxManager. Here is a help article that gives a thorough explanation on how to ajaxify the mentioned controls -
 
http://www.telerik.com/help/aspnet-ajax/splitter-how-to-ajax.html.



Greetings,
Maria Ilieva
the Telerik team
If you want to get updates on new releases, tips and tricks and sneak peeks at our product labs directly from the developers working on the RadControls for ASP.NET AJAX, subscribe to their blog feed now.
0
Dave
Top achievements
Rank 1
answered on 28 Jun 2012, 01:44 PM
Hi again,

Just sticking a container inside the radPane and ajaxifying that is exactly the same as ajaxifying the radTreeView, you will still get the loading panel displaying outside of the radPane.

Look, there obviously is NO solution to this problem and your knowledge of what to try is no better than mine!  It would be better just to admit that and move on...  If you had any Telerik points, I'd be taking away 1000.

Thanks
Dave
0
Maria Ilieva
Telerik team
answered on 03 Jul 2012, 11:15 AM
Hi Dave,

As the RadPane should always be part of RadSplitter control you should simply add the splitter to update itself so the LoadingPanel will appear over the whole Pane. Find attached a sample runnable application which presents this scenario.

Kind regards,
Maria Ilieva
the Telerik team
If you want to get updates on new releases, tips and tricks and sneak peeks at our product labs directly from the developers working on the RadControls for ASP.NET AJAX, subscribe to their blog feed now.
0
Dave
Top achievements
Rank 1
answered on 03 Jul 2012, 04:44 PM

Ok, for giving a suggestion that at least works I'll give you back 500 of the 1000 points but now we're back to your original suggestion of covering the entire page with the loading panel since the spitter containing this pane (along with several others) covers the entire page.  As I wrote previous;

> It's just my personal choice but, I do not like to cover the entire page
> with loading panel when updating, but rather only the controls concerned...

Plus, there are other side affects when doing this as some risizing of RadGrids in other panes to force them to fill the pane in the same splitter stopped working correctly when I added your suggestion.

Sometimes you just can't get the desired resutls, it's ok to admit that and it won't stop me from using the Telerik controls.  Please consider this thread closed
Tags
Ajax
Asked by
Dave
Top achievements
Rank 1
Answers by
Maria Ilieva
Telerik team
Dave
Top achievements
Rank 1
Share this question
or