Rotator, LINQ data and AJAX Loading Panel

2 posts, 0 answers
  1. Ivan
    Ivan avatar
    9 posts
    Member since:
    Sep 2010

    Posted 02 Sep 2010 Link to this post

    Hello everyone.

    I'm using a Window on my page that has a Rotator in it. The Rotator is bound to a LINQ data set. It worked fine,
    but then I tried to put an AJAX Loading Panel to show a "loading" image while the rotator is bound and I get the following error:

    The Controls collection cannot be modified because the control contains code blocks (i.e. <% ... %>).

    I tried using a RadCodeBlock without luck.

    Here is my code:

    (Main .aspx page)

    <telerik:RadScriptBlock ID="RadScriptBlock1" runat="server">
        <script type="text/javascript">
        //<![CDATA[
            function openWin()
            {
                var oWnd = radopen("SCARLog.aspx", "RadWindow1");
            }
        //]]>
        </script>
    </telerik:RadScriptBlock>

    <telerik:RadWindowManager ID="RadWindowManager1" ShowContentDuringLoad="false" VisibleStatusbar="false"
    ReloadOnShow="true" runat="server" Skin="Hay" EnableShadow="true">
        <Windows>
            <telerik:RadWindow ID="RadWindow1" runat="server" Behaviors="Close" NavigateUrl="Log.aspx">
            </telerik:RadWindow>
        </Windows>
    </telerik:RadWindowManager>

    (.aspx window page)
    <body height="100%" scroll="no" style="overflow:hidden;" scrooltop="oTop" >
    <form>
    <title>Detail Log</title>

    <telerik:RadScriptManager ID="RadScriptManager1" runat="server" ></telerik:RadScriptManager>

    <telerik:RadAjaxManager ID="RadAjaxManager1" runat="server">
        <AjaxSettings>
            <telerik:AjaxSetting AjaxControlID="Panel1">
                <UpdatedControls>
                    <telerik:AjaxUpdatedControl ControlID="Panel1" LoadingPanelID="RadAjaxLoadingPanel1" />
                </UpdatedControls>
            </telerik:AjaxSetting>
        </AjaxSettings>
    </telerik:RadAjaxManager>

    <telerik:RadFormDecorator ID="RadFormDecorator1" DecoratedControls="All" runat="server" Skin="Hay" />

    <asp:Panel ID="Panel1" runat="server" HorizontalAlign="Center" Height="275px">
    <telerik:RadRotator ID="Rotator" runat="server" Skin="Hay" ScrollDirection="Up"
    RotatorType="AutomaticAdvance" FrameDuration="3000" Width="300px" ItemWidth="302px" Height="100px" ItemHeight="100px">
    <ItemTemplate>
        <div style="text-align:center">
            <telerik:RadCodeBlock ID="RadCodeBlock1" runat="server">
                <asp:Label ID="lblDate" runat="server">Date: <%# DataBinder.Eval(Container.DataItem,"DateChanged") %></asp:Label>
            </telerik:RadCodeBlock>
        </div>
        <div style="text-align:center">
            <asp:Label ID="Label2" runat="server">User ID: </asp:Label>
            <telerik:RadCodeBlock ID="RadCodeBlock2" runat="server">
                <asp:Label ID="lblUser" runat="server"><%# DataBinder.Eval(Container.DataItem, "UserID")%></asp:Label>
            </telerik:RadCodeBlock>
        </div>
        <div style="text-align:center">
            <asp:Label ID="Label3" runat="server">From status: </asp:Label>
            <telerik:RadCodeBlock ID="RadCodeBlock3" runat="server">
                <asp:Label ID="lblFrom" runat="server"><%# DataBinder.Eval(Container.DataItem, "FromStatus")%></asp:Label>
            </telerik:RadCodeBlock>
        </div>
        <div style="text-align:center">
            <asp:Label ID="Label4" runat="server">To status: </asp:Label>
            <telerik:RadCodeBlock ID="RadCodeBlock4" runat="server">
                <asp:Label ID="lblTo" runat="server"><%# DataBinder.Eval(Container.DataItem, "ToStatus")%></asp:Label>
            </telerik:RadCodeBlock>
        </div>
    </ItemTemplate>
    </telerik:RadRotator>
    </asp:Panel>

    <telerik:RadAjaxLoadingPanel ID="RadAjaxLoadingPanel1" runat="server" BackgroundPosition="Center" EnableSkinTransparency="true">
        <asp:Image id="Image1" runat="server" ImageUrl="~/images/Loading.gif" ></asp:Image>
    </telerik:RadAjaxLoadingPanel>

    </form>

    </body>

    (.aspx.cs code)

    if (!this.IsPostBack)
    {
        System.Threading.Thread.Sleep(1000);
        Int32 Snum = Convert.ToInt32(Session["IDNumber"].ToString());
        using (Entity db = new Entity())
        {
            var data = from L in db.Log
            where L.IDNumber == Snum
            orderby L.DateChanged
            select new
            {
                L.DateChanged,
                L.FromStatus,
                L.ToStatus,
                L.UserID,
            };
            Rotator.DataSource = data;
            Rotator.DataBind();
        }
    }

  2. Pero
    Admin
    Pero avatar
    1156 posts

    Posted 08 Sep 2010 Link to this post

    Hello Ivan,

    Could you please try using RadWindows Content container, as shown in the following online demo: http://demos.telerik.com/aspnet-ajax/window/examples/internalcontent/defaultcs.aspx?

    Kind regards,
    Pero
    the Telerik team
    Do you want to have your say when we set our development plans? Do you want to know when a feature you care about is added or when a bug fixed? Explore the Telerik Public Issue Tracking system and vote to affect the priority of the items
  3. UI for ASP.NET Ajax is Ready for VS 2017
Back to Top