Hi, I have a problem with the control RadAjaxLoadingPanel. My version of Telerik controls is 2009.3.1314.35.
When I expand all the panels by server call, the loader is showed correctly on each panel, but when one of the panels ends the loader panel stop loader image and then, when the async post back was end, show the correct result. Where am I wrong?
Can I use only 1 PanelLoad for each Panel? In this exemple I have use 3 different Load, but the result is the same if I use 1 loader for all panel, is it wrong? Is it correct to use 1 panel Load for all Panel or must I use different loader panel?
If I use the DefaultLoadingPanelID of RadAjaxManager and clear the LoadingPanelID of RadAjaxPanel control the loader are not show, is wrong this operation?
I have also this problems
- I want to custom the style of panel header, what should I do? Does a specific css property exists for this? The css property of panelbar is for body not header.
- The distance of panel was set in panelBoxOut css class, in the attached sample is 90px. The loader are draw under the panel header corectly. If I set the property to 10 px the loader are draw in header panel. I want that the space from 2 panel are 10px but the loader are draw under loader and the distance is in css property class (90px), is it possible?
- I would like to call expand funtion by server side, but collapse the panel invoking a client function, I don’t want the postback for collapse, is it possible?
Here enclosed you will find a solution that summarize all the issue written in this post.
Thanks in advance for your prompt reply.
Best Regards.
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="Default" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<
html
xmlns
=
"http://www.w3.org/1999/xhtml"
>
<
head
runat
=
"server"
>
<
title
></
title
>
<
telerik:RadStyleSheetManager
ID
=
"RadStyleSheetManager1"
runat
=
"server"
/>
<
style
type
=
"text/css"
>
.panelBoxOut
{
min-height: 90px;
}
.panelBoxIn
{
min-height: 35px;
}
</
style
>
</
head
>
<
body
>
<
script
type
=
"text/javascript"
>
function OnExpand(sender, eventArgs) {
//logEvent("On expand: " + eventArgs.get_item().get_text());
}
function OnCollapse(sender, eventArgs) {
//logEvent("On collapse: " + eventArgs.get_item().get_text());
//how to Stop postback???
return false;
}
</
script
>
<
form
id
=
"form1"
runat
=
"server"
>
<
asp:ScriptManager
ID
=
"ScriptManager1"
runat
=
"server"
>
</
asp:ScriptManager
>
<
telerik:RadAjaxManager
ID
=
"RadAjaxManager1"
runat
=
"server"
RequestQueueSize
=
"10"
>
<
AjaxSettings
>
<
telerik:AjaxSetting
AjaxControlID
=
"RadAjaxPanelFatture"
>
</
telerik:AjaxSetting
>
<
telerik:AjaxSetting
AjaxControlID
=
"RadAjaxPanelContratti"
>
</
telerik:AjaxSetting
>
</
AjaxSettings
>
</
telerik:RadAjaxManager
>
<
telerik:RadAjaxLoadingPanel
ID
=
"RadAjaxLoadingPanel1"
runat
=
"server"
Skin
=
"Default"
>
</
telerik:RadAjaxLoadingPanel
>
<
telerik:RadAjaxLoadingPanel
ID
=
"RadAjaxLoadingPanel2"
runat
=
"server"
Skin
=
"Default"
>
</
telerik:RadAjaxLoadingPanel
>
<
telerik:RadAjaxLoadingPanel
ID
=
"RadAjaxLoadingPanel3"
runat
=
"server"
Skin
=
"Default"
>
</
telerik:RadAjaxLoadingPanel
>
<
div
>
<
div
>
<
telerik:RadAjaxPanel
ID
=
"RadAjaxPanel1Contratti"
runat
=
"server"
LoadingPanelID
=
"RadAjaxLoadingPanel1"
>
<
telerik:RadPanelBar
runat
=
"server"
ID
=
"RadPanelBarContratti"
AllowCollapseAllItems
=
"True"
Width
=
"100%"
CssClass
=
"panelBoxOut"
OnClientItemExpand
=
"OnExpand"
OnClientItemCollapse
=
"OnCollapse"
OnItemClick
=
"RadPanelBarContratti_ItemClick"
>
<
Items
>
<
telerik:RadPanelItem
Text
=
"1) Contratti"
Value
=
"pnlDataAnagafica"
>
<
Items
>
<
telerik:RadPanelItem
Value
=
"Grid"
>
<
ItemTemplate
>
<
div
class
=
"panelBoxIn"
>
<%--<
telerik:RadGrid
ID
=
"grdContratti"
runat
=
"server"
DataSourceID
=
"ObjectDataSourceContratti"
GridLines
=
"None"
Visible
=
"False"
AutoGenerateColumns
=
"False"
>
<
MasterTableView
>
</
MasterTableView
>
</
telerik:RadGrid
>--%>
<
asp:Label
ID
=
"Label1"
runat
=
"server"
Text
=
""
></
asp:Label
>
</
div
>
</
ItemTemplate
>
</
telerik:RadPanelItem
>
</
Items
>
</
telerik:RadPanelItem
>
</
Items
>
</
telerik:RadPanelBar
>
</
telerik:RadAjaxPanel
>
</
div
>
<
div
>
<
telerik:RadAjaxPanel
ID
=
"RadAjaxPanelFatture"
runat
=
"server"
LoadingPanelID
=
"RadAjaxLoadingPanel2"
>
<
telerik:RadPanelBar
runat
=
"server"
ID
=
"RadPanelBarFatture"
CssClass
=
"panelBoxOut"
AllowCollapseAllItems
=
"false"
Width
=
"100%"
OnClientItemExpand
=
"OnExpand"
OnClientItemCollapse
=
"OnCollapse"
OnItemClick
=
"RadPanelBarFatture_ItemClick"
>
<
Items
>
<
telerik:RadPanelItem
Text
=
"2) Fatture"
Value
=
"pnlDataAnagafica"
>
<
Items
>
<
telerik:RadPanelItem
Value
=
"Grid"
>
<
ItemTemplate
>
<
div
class
=
"panelBoxIn"
>
<%-- <
telerik:RadGrid
ID
=
"grdFatture"
runat
=
"server"
DataSourceID
=
"ObjectDataSourceFatture"
GridLines
=
"None"
Visible
=
"False"
AutoGenerateColumns
=
"False"
OnGridCreated
=
"OnGridCreated"
AllowPaging
=
"True"
PageSize
=
"15"
>
<
MasterTableView
>
</
MasterTableView
>
</
telerik:RadGrid
>--%>
<
asp:Label
ID
=
"Label1"
runat
=
"server"
Text
=
""
></
asp:Label
>
</
div
>
</
ItemTemplate
>
</
telerik:RadPanelItem
>
</
Items
>
</
telerik:RadPanelItem
>
</
Items
>
</
telerik:RadPanelBar
>
</
telerik:RadAjaxPanel
>
</
div
>
<
div
>
<
telerik:RadAjaxPanel
ID
=
"RadAjaxPanel1"
runat
=
"server"
LoadingPanelID
=
"RadAjaxLoadingPanel3"
>
<
telerik:RadPanelBar
runat
=
"server"
ID
=
"RadPanelBarBarAnagrafe"
CssClass
=
"panelBoxOut"
AllowCollapseAllItems
=
"false"
Width
=
"100%"
OnClientItemExpand
=
"OnExpand"
OnClientItemCollapse
=
"OnCollapse"
OnItemClick
=
"RadPanelBarAnagrafe_ItemClick"
>
<
Items
>
<
telerik:RadPanelItem
Text
=
"3) Fatture"
Value
=
"pnlDataAnagafica"
>
<
Items
>
<
telerik:RadPanelItem
Value
=
"Grid"
>
<
ItemTemplate
>
<
div
class
=
"panelBoxIn"
>
<%-- <
telerik:RadGrid
ID
=
"grdFatture"
runat
=
"server"
DataSourceID
=
"ObjectDataSourceFatture"
GridLines
=
"None"
Visible
=
"False"
AutoGenerateColumns
=
"False"
OnGridCreated
=
"OnGridCreated"
AllowPaging
=
"True"
PageSize
=
"15"
>
<
MasterTableView
>
</
MasterTableView
>
</
telerik:RadGrid
>--%>
<
asp:Label
ID
=
"Label1"
runat
=
"server"
Text
=
""
></
asp:Label
>
</
div
>
</
ItemTemplate
>
</
telerik:RadPanelItem
>
</
Items
>
</
telerik:RadPanelItem
>
</
Items
>
</
telerik:RadPanelBar
>
</
telerik:RadAjaxPanel
>
</
div
>
</
div
>
</
form
>
</
body
>
</
html
>
using
System;
using
System.Web;
using
System.Web.UI;
using
System.Web.UI.WebControls;
using
System.Data;
using
System.Configuration;
using
System.Web.Security;
using
System.Web.UI.WebControls.WebParts;
using
System.Web.UI.HtmlControls;
using
Telerik.Web.UI;
public
partial
class
Default : System.Web.UI.Page
{
protected
void
Page_Load(
object
sender, EventArgs e)
{
}
protected
void
RadPanelBarContratti_ItemClick(
object
sender, RadPanelBarEventArgs e)
{
/*
RadGrid grdContratti = (RadGrid)RadPanelBarContratti.FindItemByValue("Grid").FindControl("grdContratti");
if (!grdContratti.Visible)
{
grdContratti.Visible = true;
base.ConfigGrid(ref grdContratti);
//grdContratti.DataBind();
}
*/
//Simulate grid bind time with thread
System.Threading.Thread.Sleep(15000);
Label lblContratti = (Label)RadPanelBarContratti.FindItemByValue(
"Grid"
).FindControl(
"Label1"
);
lblContratti.Text =
"Bind Finish!"
;
}
protected
void
RadPanelBarFatture_ItemClick(
object
sender, RadPanelBarEventArgs e)
{
/*
RadGrid grdFatture = (RadGrid)RadPanelBarFatture.FindItemByValue("Grid").FindControl("grdFatture");
if (!grdFatture.Visible)
{
grdFatture.Visible = true;
base.ConfigGrid(ref grdFatture);
//grdFatture.DataBind();
}
*/
//Simulate grid bind time with thread
System.Threading.Thread.Sleep(10000);
Label lblContratti = (Label)RadPanelBarFatture.FindItemByValue(
"Grid"
).FindControl(
"Label1"
);
lblContratti.Text =
"Bind Finish!"
;
}
protected
void
RadPanelBarAnagrafe_ItemClick(
object
sender, RadPanelBarEventArgs e)
{
/*
RadGrid grdFatture = (RadGrid)RadPanelBarFatture.FindItemByValue("Grid").FindControl("grdFatture");
if (!grdFatture.Visible)
{
grdFatture.Visible = true;
base.ConfigGrid(ref grdFatture);
//grdFatture.DataBind();
}
*/
//Simulate grid bind time with thread
System.Threading.Thread.Sleep(5000);
Label lblContratti = (Label)RadPanelBarBarAnagrafe.FindItemByValue(
"Grid"
).FindControl(
"Label1"
);
lblContratti.Text =
"Bind Finish!"
;
}
}