Nested RadGrid AjaxManager Link Button Loading panel not showing

2 posts, 0 answers
  1. Kyle
    Kyle avatar
    24 posts
    Member since:
    Jun 2013

    Posted 28 Jan 2016 Link to this post

    Hi All,


    I Have a nested gridview with HierarchyLoadMode="Server Binding"  (think an Purchase Order / Lines).

    Within the Lines grid view I have a link button in a template column:

        <telerik:GridTemplateColumn UniqueName="PO_Num" HeaderText="PO #" HeaderStyle-HorizontalAlign="Center" ItemStyle-HorizontalAlign="Center" SortExpression="PO_Num">
                                            <asp:LinkButton runat="server" ID="lbPO" CommandArgument='<%#Eval("PO_Num").ToString() %>' OnClick="lbPO_Click" Text='<%#Eval("PO_Num").ToString()%>' ToolTip="View invoices for this PO." />


    When this button is clicked it pulls data and binds it to a completely separate grid.  

     My issue is with the loading panel.  When the link button first becomes visible, if I click on the link button the loading panel will not show, even though I'm dynamically adding the control to the rad ajax manager (I've tried on both the pre_render and ItemDataBound events).  The button still works as though it's ajaxed, but it's not being fired though the OnRequestStart.  If another control that is also ajaxed gets fired (say a dropdownlist on the page), the link button will then work as expected . . . going through the OnRequestStart and showing the loading panel.


     Looking for suggestions / work arounds.

     My Parent Grid databinding to the child grid:

    protected void rgPurchaseOrder_ItemCommand(object sender, GridCommandEventArgs e)
        if (e.CommandName == RadGrid.ExpandCollapseCommandName)
            GridDataItem parentItem = e.Item as GridDataItem;
            RadGrid rgLines = parentItem.ChildItem.FindControl("rgLines") as RadGrid;
            if (!e.Item.Expanded)
                rgLines.Visible = true;
                if (parentItem.ItemType == GridItemType.AlternatingItem)
                    parentItem.ChildItem.BackColor = System.Drawing.Color.FromArgb(231, 255, 229);
                rgLines.Visible = false;


     My Lines PreRender . . . 

    protected void rgLines_PreRender(object sender, EventArgs e)
           foreach (GridNestedViewItem item in rgPurchaseOrder.MasterTableView.GetItems(GridItemType.NestedView))
               GridDataItem grandParentItem = (GridDataItem)item.ParentItem;
               RadGrid rgLines = grandParentItem.ChildItem.FindControl("rgLines") as RadGrid;
               if (rgLines!= null)
                   foreach (GridDataItem childItem in rgLines.MasterTableView.Items)
                          LinkButton btn = (LinkButton)childItem["PO"].FindControl("lbPO");
        //wires up to an asp:panel . . . doesn't matter if I point at the rad grid directly or not, loading panel won't show.
        RadAjaxManager.GetCurrent(this.Page).AjaxSettings.AddAjaxSetting(btn, pnlInvoices, RadAjaxLoadingPanel2);


    aspx (just showing generic layout).


     <radgrid ID = "rgPurchaseOrder">

    <master table view>



    <radgrid ID="rgLines" >


    </master table view>




    <asp:panel id="pnlInvoices">

    <radGrid id="rgInvoices">



  2. Maria Ilieva
    Maria Ilieva avatar
    4017 posts

    Posted 02 Feb 2016 Link to this post


    Based on the provided description it is rather difficult to determine what exactly is causing the issue you are facing. Can you please share your full page markup and related code behind so that we can revise it locally and advise you further?

    Maria Ilieva
    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 Feedback Portal and vote to affect the priority of the items
Back to Top