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

RadGrid in MOSS Webpart - AjaxLoadingPanel position

6 Answers 92 Views
Sharepoint Integration
This is a migrated thread and some comments may be shown as answers.
Mario
Top achievements
Rank 1
Mario asked on 07 Apr 2009, 04:23 PM
Hello,

First an foremost, let me tell you have done an excellent job with this product, is robust, portable and very well architected, im glad to be using them.

Second, I haven't been able to position my loading indicator correctly, it always appear in the top and the EnableSkinTransparency is not working.

Im doing the whole job as a server control (no aspx) it is also executed in the OnInit() of the webpart

Thanks for your support



#region

 

Ajax initialization

 

Page.ClientScript.RegisterStartupScript(

typeof(ReferralsListWebPart1), this.ID, "_spOriginalFormAction = document.forms[0].action;_spSuppressFormOnSubmitWrapper=true;", true);

 

 

if (this.Page.Form != null)

 

{

 

string formOnSubmitAtt = this.Page.Form.Attributes["onsubmit"];

 

 

if (!string.IsNullOrEmpty(formOnSubmitAtt) && formOnSubmitAtt == "return _spFormOnSubmitWrapper();")

 

{

 

this.Page.Form.Attributes["onsubmit"] = "_spFormOnSubmitWrapper();";

 

}

}

 

RadAjaxPanel panel = new RadAjaxPanel();

 

panel.ID =

"RadAjaxPanel1";

 

 

this.Controls.Add(panel);

 

 

RadAjaxManager ajaxManager = RadAjaxManager.GetCurrent(this.Page);

 

 

if (ajaxManager == null)

 

{

ajaxManager =

new RadAjaxManager();

 

ajaxManager.ID =

"RadAjaxManager1";

 

Controls.Add(ajaxManager);

 

this.Page.Items.Add(typeof(RadAjaxManager), ajaxManager);

 

}

 

 

 

RadAjaxLoadingPanel loadingPanel = new RadAjaxLoadingPanel();

 

loadingPanel.ID =

"AjaxLoadingPanel1";

 

loadingPanel.Width =

Unit.Percentage(100);

 

loadingPanel.Height =

Unit.Pixel(400);

 

loadingPanel.Transparency = 25;

loadingPanel.EnableSkinTransparency =

true;

 

 

AjaxLoadingPanelBackgroundPosition position = new AjaxLoadingPanelBackgroundPosition();

 

position =

AjaxLoadingPanelBackgroundPosition.Center;

 

loadingPanel.BackgroundPosition = position;

 

Image image = new Image();

 

image.ID =

"loadingImage";

 

image.AlternateText =

"Loading...";

 

image.ImageUrl =

"/_layouts/images/loading.gif";

 

loadingPanel.Controls.Add(image);

 

this.Controls.Add(loadingPanel);

 

panel.LoadingPanelID =

"AjaxLoadingPanel1";

 

 

#endregion

6 Answers, 1 is accepted

Sort by
0
Rosen
Telerik team
answered on 09 Apr 2009, 10:44 AM
Hello Mario,

The EnableSkinTransparency and BackgroundPosition properties are only applicable when RadLoadingPanel 's Skin property is set. Please not that when Skin is set you may need to remove the image control which you have added manually to loading panel's controls collection.

Greetings,
Rosen
the Telerik team

Check out Telerik Trainer , the state of the art learning tool for Telerik products.
0
Mario
Top achievements
Rank 1
answered on 09 Apr 2009, 04:53 PM
Thanks for your response,

I got know working the transparency, but since I took the image out, I went ahead a look for a property to set the image in the panel, i found .BackImageUrl. I set that one with the loading.gif image path and Im getting multiple background images now

If I take that off, the single image seams to not be found

Let me know what im missing,

Thanks
0
Accepted
Rosen
Telerik team
answered on 10 Apr 2009, 03:27 PM
Hello Mario,

When using RadLoadingPanel with skin set the image by default is retrieved from the skin's css. In order to remove this css image you should set  AjaxLoadingPanelBackgroundPosition None. If you want to use the embedded image you should not use an external image.

If you want to use custom image you should add the image inside panel's controls collection, set the skin to an empty string and use the transparency property of the panel. Please note that in this case you should manually position the image to the center of loading panel.

Greetings,
Rosen
the Telerik team

Check out Telerik Trainer , the state of the art learning tool for Telerik products.
0
Mario
Top achievements
Rank 1
answered on 10 Apr 2009, 03:42 PM
Thanks for the tip,

I think I'll stick to the default image, but you know whats happening really, the ajaxloadingpanel is working fine in FF, its doing the transparency effect along with the image in the middle, but in IE, seams like is not finding the Image, theres just a blur in the middle of the transparency effect (look like an image not found kind of thing)

Let me know, what can that be

Keep im mind im working in a sharepoint webpart

Thanks
0
vairam
Top achievements
Rank 1
answered on 30 Jun 2009, 05:31 AM

Hi

I am also having the same problem RadAjaxLoadingPanel loading image is not display .
theres just a blur in the middle of the transparency effect.
here is my code

 _LoadingPanel = new RadAjaxLoadingPanel();
 _LoadingPanel.ID = "LoadingPanel";

                //change the schedular skin               
                    _LoadingPanel.Skin = this.Skin.ToString();
                //set width and height of the schedular
                _LoadingPanel.Width = Unit.Pixel(this.CalendarWidth);
                _LoadingPanel.Height = Unit.Pixel(this.CalendarHeight);

                _LoadingPanel.Width = Unit.Percentage(100);
                _LoadingPanel.Height = Unit.Pixel(400);
                _LoadingPanel.Transparency = 25;
                _LoadingPanel.EnableSkinTransparency = true;
                AjaxLoadingPanelBackgroundPosition position = new AjaxLoadingPanelBackgroundPosition();
                position = AjaxLoadingPanelBackgroundPosition.Center;
                _LoadingPanel.BackgroundPosition = position;
                this.Controls.Add(_LoadingPanel);
                _radAjaxpanel = new RadAjaxPanel();
                _radAjaxpanelminical = new RadAjaxPanel();
                _radAjaxpanelminical.EnableAJAX = true;
                _radAjaxpanel.EnableAJAX = true;
                _radAjaxpanel.ID = "AjaxPannel";
                _radScheduler.ID = "radScheduler";
                _radAjaxpanel.LoadingPanelID = "LoadingPanel";
           _radAjaxpanel.Controls.Add(_radScheduler);

can you guide me as soon as possible


Regards
Vairam

0
Sebastian
Telerik team
answered on 30 Jun 2009, 07:54 AM
Hello vairam,

With skin applied for the RadAjaxLoadingPanel, you do not need these settings:

               _LoadingPanel.Width = Unit.Pixel(this.CalendarWidth);
                _LoadingPanel.Height = Unit.Pixel(this.CalendarHeight);

                _LoadingPanel.Width = Unit.Percentage(100);
                _LoadingPanel.Height = Unit.Pixel(400);
                _LoadingPanel.Transparency = 25;
                _LoadingPanel.EnableSkinTransparency = true;


since transparency, width/height, etc. will be automatically controlled by the relevant loading panel skin. These are applicable in case you will use your custom image for loading panel.

Kind regards,
Sebastian
the Telerik team


Instantly find answers to your questions on the new Telerik Support Portal.
Check out the tips for optimizing your support resource searches.
Tags
Sharepoint Integration
Asked by
Mario
Top achievements
Rank 1
Answers by
Rosen
Telerik team
Mario
Top achievements
Rank 1
vairam
Top achievements
Rank 1
Sebastian
Telerik team
Share this question
or