Telerik Forums
UI for ASP.NET AJAX Forum
1 answer
128 views
On my web page, i have one radgrid1 which is pre-populating.
On same page, i have a search functionality on a button, which popup a window and populates a radgrid2 on some search criteria.
radgrid2 have link button in item template column,  now when i click on link button i want to populate my radgrid1 with the selected row data from radgrid2.

Any help is appreciated.

It is very urgent. Pls Help.
Shinu
Top achievements
Rank 2
 answered on 07 Jan 2011
4 answers
148 views
i have a hierarchical radgrid on a master/content page which uses load on demand to load detail tables...

this functionality WAS WORKING and then i made quite a few ajax-related changes (added controls with ajax functionality, various troubleshooting changes, etc) which somewhere along the line took away this functionality.

the detailtabledatabind event is called, and executes properly, however it looks like the page is just never updated with the detail table data.

any help is appreciated!

I have my code below


master page markup:
<head runat="server">
     
    <title></title>
    <style type="text/css">
 
        html
        {
            overflow:hidden;
        }
 
        html,
        body,
        form
        {
            margin:0;
            height:100%;
            background-color:#f8f8f8;
        }
        #gridAreaContent
        {   
            position: absolute;
            width: 100%;
        }       
    </style>
    <asp:ContentPlaceHolder ID="head" runat="server">
    </asp:ContentPlaceHolder>
 
</head>
<body>   
     
    <telerik:RadSkinManager ID="_radSkinMan" Runat="server" Skin="WebBlue">
    </telerik:RadSkinManager>
    <form id="form1" runat="server">
     
        <telerik:RadScriptManager ID="_radScriptMan" runat="server">
            <Scripts>
                <%--Needed for JavaScript IntelliSense in VS2010--%>
                <%--For VS2008 replace RadScriptManager with ScriptManager--%>
                <asp:ScriptReference Assembly="Telerik.Web.UI" Name="Telerik.Web.UI.Common.Core.js" />
                <asp:ScriptReference Assembly="Telerik.Web.UI" Name="Telerik.Web.UI.Common.jQuery.js" />
                <asp:ScriptReference Assembly="Telerik.Web.UI" Name="Telerik.Web.UI.Common.jQueryInclude.js" />
            </Scripts>
        </telerik:RadScriptManager>
        <telerik:RadAjaxManager ID="_radAjaxMan" runat="server" DefaultLoadingPanelID="RadAjaxLoadingPanel1" EnablePageHeadUpdate="false" />
         
         
        <telerik:RadAjaxLoadingPanel
            ID="RadAjaxLoadingPanel1"
            runat="server"
            BackColor="White"
            Transparency="50"
            ScrollBars="None"
            Height="100%" />
 
         
 
    <telerik:RadSplitter ID="mainSplitter" runat="server" Height="100%" Width="100%" Orientation="Horizontal" >
        <telerik:RadPane ID="RadPane1" runat="server" CssClass="ApplyOverflow" Width="100%" Height="100px" Scrolling="None">
            <div style="width:100%;">
                <telerik:RadMenu ID="_mainMenu" runat="server" Width="100%" style="position:absolute; border-width: 0px;">
                </telerik:RadMenu>
            </div>
             
            <div style="width:100%;">
                <div style="width:300px; margin-top:20px; float:right;">
                    <asp:ContentPlaceHolder ID="loginArea" runat="server" />
                </div>
                <asp:ContentPlaceHolder ID="SearchArea" runat="server" />
            </div>
             
        </telerik:RadPane >
        <telerik:RadPane ID="RadPane2" runat="server" Width="100%" Height="100%" Scrolling="None" >
            <telerik:RadSplitter ID="RadSplitter2" runat="server" Height="100%" Width="100%" Orientation="Vertical" >
                <telerik:RadPane ID="RadPane3" runat="server" Height="100%" Scrolling="None">
                    <asp:ContentPlaceHolder ID="gridAreaContent" runat="server" />
                </telerik:RadPane>
                <telerik:RadSplitBar ID="Radsplitbar1" runat="server" CollapseMode="Backward" EnableResize="false"/>
                <telerik:RadPane ID="RadPane4" runat="server" Height="100%"  Width="320px" Scrolling="None">
                    <asp:ContentPlaceHolder ID="navPanel" runat="server" />
                </telerik:RadPane>
            </telerik:RadSplitter>
        </telerik:RadPane>
 
    </telerik:RadSplitter>
     
    </form>
</body>
</html>

relevant content markup:
<asp:Content ID="Content1" ContentPlaceHolderID="head" runat="server">
    <style type="text/css">
        #<%= _GridPanelClientID %>
        {
            margin:0;
            height:800px;
        }
 
        #_Grid_GridData 
        
           overflow-x:hidden !important; 
        }
         
        /*.bigModuleBottom td{padding:0}
        div.RadToolBar_Vista { float: none !important; }
        div.RadToolBar_Vista .rtbOuter { border: 0; } */
 
        div.RadToolBar .rtbUL {
            width: 100%;
        }
        div.SeparatedButtons .rtbItem {
            float: left;
        }          
  
        div.SeparatedButtons .rightAlignedWrapper {
            text-align:center;
            float: right !important;
        }
    </style>
    <telerik:RadCodeBlock id="RadCodeBlock1" runat="server">   
        <script type="text/javascript">
 
            function onToolBarClientButtonClicking(sender, args) {
 
            function GetSelectedCSCPIDs()
            {
                var selectedRows = $find("<%=_Grid.MasterTableView.ClientID %>").get_selectedItems();
                var retVal = "";
                for (var i = 0; i < selectedRows.length; i++)
                {
                    var val = selectedRows[i].getDataKeyValue("id");
                    retVal += val + ",";
                }
                retVal = retVal.slice(0, retVal.length - 1);
                return retVal;
            }
            function RecordSelected(index, e) {
                $find("<%= RadAjaxManager.GetCurrent(Page).ClientID %>").ajaxRequest("declineChartRefresh;" + GetSelectedCSCPIDs());
            }
            function PopulateGridContextMenu()
            function RowContextMenu(sender, eventArgs) {
            function PopulateMenu(menu, row)
            function ClientGridMenuHidden(menu) {
        </script>
    </telerik:RadCodeBlock>
 
</asp:Content>
 
 
 
 
<asp:Content ID="Content2" ContentPlaceHolderID="gridAreaContent" runat="server">
    <telerik:RadAjaxManagerProxy ID="_radAjaxProxy" runat="server">
        <AjaxSettings>
            <telerik:AjaxSetting AjaxControlID="_GridContextMenu">
                <UpdatedControls>
                    <telerik:AjaxUpdatedControl ControlID="_Grid" LoadingPanelID="RadAjaxLoadingPanel1" />
                    <telerik:AjaxUpdatedControl ControlID="_GridContextMenu" />
                </UpdatedControls>
            </telerik:AjaxSetting>
            <telerik:AjaxSetting AjaxControlID="_searchButton" >
                <UpdatedControls>
                    <telerik:AjaxUpdatedControl ControlID="RadAjaxPanel5" LoadingPanelID="RadAjaxLoadingPanel1" />
                </UpdatedControls>
            </telerik:AjaxSetting>
            <telerik:AjaxSetting AjaxControlID="_navMarketListingsPanel" >
                <UpdatedControls>
                    <telerik:AjaxUpdatedControl ControlID="_navMarketListingsPanel" LoadingPanelID="RadAjaxLoadingPanel1" />
                </UpdatedControls>
            </telerik:AjaxSetting>
            <telerik:AjaxSetting AjaxControlID="_navNewsPanel" >
                <UpdatedControls>
                    <telerik:AjaxUpdatedControl ControlID="_navNewsPanel" LoadingPanelID="RadAjaxLoadingPanel1" />
                </UpdatedControls>
            </telerik:AjaxSetting>
            <telerik:AjaxSetting AjaxControlID="_navMAPanel" >
                <UpdatedControls>
                    <telerik:AjaxUpdatedControl ControlID="_navMAPanel" LoadingPanelID="RadAjaxLoadingPanel1" />
                </UpdatedControls>
            </telerik:AjaxSetting>
            <telerik:AjaxSetting AjaxControlID="_Grid" >
                <UpdatedControls>
                    <telerik:AjaxUpdatedControl ControlID="_navDeclineCurvePanel" LoadingPanelID="RadAjaxLoadingPanel1" />
                </UpdatedControls>
            </telerik:AjaxSetting>
            <telerik:AjaxSetting AjaxControlID="_radAjaxMan" >
                <UpdatedControls>
                    <telerik:AjaxUpdatedControl ControlID="_navDeclineCurvePanel" LoadingPanelID="RadAjaxLoadingPanel1" />
                </UpdatedControls>
            </telerik:AjaxSetting>
        </AjaxSettings>
    </telerik:RadAjaxManagerProxy>
 
    <input type="hidden" id="_GridSelected" name="_GridSelected" />
    <input type="hidden" id="_GridLastSelected" name="_GridLastSelected" />
    <input type="hidden" id="_GridCSCPIDsSelected" name="_GridCSCPIDsSelected" />
    <input type="hidden" id="currentQueryString" name="currentQueryString" />
 
    <telerik:RadContextMenu ID="_GridContextMenu"
                            runat="server"
                            OnItemClick="_GridContextMenu_ItemClick"
                            EnableRoundedCorners="true"
                            EnableShadows="true"
                            OnClientShowing="PopulateGridContextMenu"
                            OnClientHidden="ClientGridMenuHidden" >
        <Targets>
            <telerik:ContextMenuControlTarget ControlID="_Grid" />
        </Targets>
    </telerik:RadContextMenu>
 
 
    <telerik:RadAjaxPanel ID="RadAjaxPanel5" runat="server">
        <telerik:RadGrid ID="_Grid"
                         runat="server"
                         Width="100%"
                         Height="100%"
                         style="border:0;"
                         AutoGenerateColumns="False"
                         GridLines="None" >
            <MasterTableView CommandItemDisplay="Top">
                <CommandItemTemplate>
                </CommandItemTemplate>
            </MasterTableView>
            <ClientSettings>
                <ClientEvents OnRowSelected="RecordSelected"
                              OnRowDeselected="RecordSelected"
                              OnRowContextMenu="RowContextMenu"></ClientEvents>
            </ClientSettings>
        </telerik:RadGrid>
    </telerik:RadAjaxPanel>
</asp:Content>

relevant code-behind:
protected void Page_Load(object sender, EventArgs e)
{
    _Grid.DetailTableDataBind += new GridDetailTableDataBindEventHandler(_Grid_DetailTableDataBind);
    _Grid.NeedDataSource +=new GridNeedDataSourceEventHandler(_Grid_NeedDataSource);
    _Grid.SortCommand +=new GridSortCommandEventHandler(_Grid_SortCommand);
    _Grid.ItemDataBound +=new GridItemEventHandler(_Grid_ItemDataBound);
    _Grid.SelectedIndexChanged += new EventHandler(_Grid_SelectedIndexChanged);
 
    RadAjaxManager _radAjaxMan = RadAjaxManager.GetCurrent(Page);
 
    _radAjaxMan.AjaxRequest += new RadAjaxControl.AjaxRequestDelegate(_radAjaxMan_AjaxRequest);
    _radAjaxMan.AjaxSettings.AddAjaxSetting(_Grid, _navDeclineCurvePanel, (RadAjaxLoadingPanel)this.Master.FindControl("RadAjaxLoadingPanel1"));
    RadAjaxManager.GetCurrent(Page).AjaxSettingCreated += new RadAjaxControl.AjaxSettingCreatedDelegate(contentpagecs_aspx_AjaxSettingCreated);
    _radAjaxProxy.AjaxSettings.AddAjaxSetting(_Grid, _Grid);
    //_radAjaxProxy.AjaxSettings.AddAjaxSetting(RadMenu1, RadMenu1);
}
 
    void _Grid_DetailTableDataBind(object sender, GridDetailTableDataBindEventArgs e)
{
    e.Canceled = true;
    GridDataItem dataItem = (GridDataItem)e.DetailTableView.ParentItem;
    switch (e.DetailTableView.Name)
    {
        case "WP":
            {
                string cscpID = dataItem.GetDataKeyValue("id").ToString();
                e.DetailTableView.DataSource = GetDataTable(GetWellProductionFromCSCPID(cscpID));
                break;
            }
        case "MWP":
            {
                string WellID = dataItem.GetDataKeyValue("WellID").ToString();
                e.DetailTableView.DataSource = GetDataTable(GetMonthlyProduction(WellID));
                break;
            }
    }
}


Felipe
Top achievements
Rank 1
 answered on 07 Jan 2011
1 answer
80 views
Hello,

Is it possible to drag and drop rows within the RadGrid, a sort of reordering records?  I was trying the JQuery sortable plugin (with custom persistence) but the issue is I have a detail child table involved.

Thanks.
Princy
Top achievements
Rank 2
 answered on 07 Jan 2011
1 answer
57 views
I have a radgrid ( summary below )

 <telerik:RadGrid ID="rgrdAandE" runat="server" AutoGenerateColumns="false"  AllowPaging="true" AllowSorting="true" >
       <MasterTableView DataKeyNames="Hospital_No">
        <Columns>
           ......
         </Columns>
       </MasterTableView>
       <PagerStyle Mode="NumericPages" Position="Bottom" />
  </telerik:RadGrid>
   
I want to add a button or drop down so that the user can change the pagesize and then it automatically refreshes the grid. This is to allow for more rows to be shown on large monitors rather than a fixed page size.

Can anyone help
Thanks
Princy
Top achievements
Rank 2
 answered on 07 Jan 2011
2 answers
77 views
Hi,

I have a problem with collapsing the filter row.  I have set the filter item row visibility to hidden as well as to collapsed. The filter item gets hidden but the containing row still exists. Could help me out with this?


Thanks and Regards,
Niraj Khose
Niraj
Top achievements
Rank 1
 answered on 07 Jan 2011
0 answers
58 views
We can control the number of files that the Upload control can upload at anyone time. However, when we retrieve a record that previously had files associated to it, how do we check for the balance? For example if I saved a record as draft and call it back later, how do I ensure that only 3 more files can be uploaded, this is assuming we only allow 5 files maximum to be uploaded for a record.

Regards

Effendi
Top achievements
Rank 1
 asked on 07 Jan 2011
5 answers
158 views

 

If I specify viewpaths, uploadpaths, deletepaths, and SearchPatterns properties in the ASPX file, then the control works, i.e., the SearchPatterns are applied and I can upload files.

If I specify viewpaths, uploadpaths, deletepaths, and SearchPatterns properties in my code behind, then I have the following problems:

 

  1. upload is not enabled;
  2. delete button is not enabled; and
  3. SearchPatterns are not applied.

I use version 2010.1.309.35.

ASPX:

    <telerik:RadFileExplorer runat="server" ID="explorer" EnableViewState="true" Width="700px" Height="480px"  > 
    <Configuration ViewPaths="~/Content/1/" UploadPaths="~/Content/1/" DeletePaths="~/Content/1/" MaxUploadFileSize="8000000" SearchPatterns="*.png" /> 
    </telerik:RadFileExplorer> 
 

 

 


C#:
string[] paths = new string[] { "~/Content/2/""~/Content/1/"};  
 
explorer.Configuration.MaxUploadFileSize = 1024 * 1024 * 8; // 8Mb  
explorer.Configuration.SearchPatterns = new string[] { "*.png""*.jpg""*.gif" };  
explorer.Configuration.ViewPaths = paths;  
explorer.Configuration.UploadPaths = paths;  
explorer.Configuration.DeletePaths = paths; 

Neil
Top achievements
Rank 1
 answered on 06 Jan 2011
1 answer
61 views
I'm sure I'm missing something simple and apologize in advance.

I have a basic aspx page with the following form:

<form id="form1" runat="server">
  <telerik:RadScriptManager ID="RadScriptManager1" runat="server">
  </telerik:RadScriptManager>
  <telerik:RadAjaxManager ID="RadAjaxManager1" runat="server">
    <AjaxSettings>
      <telerik:AjaxSetting AjaxControlID="RadAjaxPanel1">
        <UpdatedControls>
          <telerik:AjaxUpdatedControl ControlID="lblInfo" />
        </UpdatedControls>
      </telerik:AjaxSetting>
    </AjaxSettings>
  </telerik:RadAjaxManager>
  <telerik:RadAjaxPanel ID="RadAjaxPanel1" runat="server"
                                                 Height="200px" Width="300px">
    <uc1:GameSelector ID="GameSelector1" runat="server" />
    <asp:Label ID="lblInfo" runat="server" Text="Info" />
  </telerik:RadAjaxPanel>
</form>


What's supposed to happen is that the user selects an game in a RadComboBox in the GameSelector user control, and for this exercise I just want to pass back some text about what was selected.

To get the lblInfo to change, I have the following in codebehind:
protected void Page_Load( object sender , EventArgs e )
{
    GameSelector1.GameChanged +=
        
new GameChangedEventHandler(GameSelector1_GameChanged);
}
void GameSelector1_GameChanged( object sender , GameEventArgs a )
{
    lblInfo.Text = a.Game.ID + " " + a.Game.Name;
}

So the label is on the panel with the user control containing the combobox. The combobox does execute the GameChanged event and lblInfo is changed in code, but the browser does not  reflect a change.

The user control has a RadAjaxManagerProxy. The proxy sets a panel in that control to trigger its own update (is that necessary?).  Inside the panel is the combobox.  The combobox fires a change back to the server as it should.

I'm guessing that what's happening is that the usercontrol is not firing a trigger, it's the panel in the user control that triggers a postback. The combobox passes the selectionchanged event through GameChanged as seen above, but the aspx page isn't updated because nothing on that page itself triggered the event.  That's just a theory.  Given that, I would  have assumed that the manager proxy on the user control should have been linked to the manager on the aspx, and that would have triggered an update of the label.  So again, I'm guessing (not too strong on this) that maybe is just a timing issue with the ASP.NET life cycle, where the event handler above is executed after the manager updates the label..

So how do I properly wire the main page so that a control will be updated when events are fired on user controls?  Can the proxy be set to trigger an update in the upline manager?

Thanks!


TonyG
Top achievements
Rank 1
 answered on 06 Jan 2011
0 answers
71 views
I have a rad grid with a clientSidedelete column. The client side delete works fine, but I get an javascript error on the first time I postback if a row had been deleted.
error: control is null in code below
function ValidatorGetValue(id) {
    var control;
    control = document.getElementById(id);
    if (typeof(control.value) == "string") {
        return control.value;
    }
    return ValidatorGetValueRecursive(control);

<telerik:RadGrid ID="rgIntervalSetup" Width="100%" ShowStatusBar="True" AllowSorting="True"
                                PageSize="365" GridLines="None" BorderWidth="1px" BorderStyle="Solid" BorderColor="Gainsboro"
                                AllowPaging="false" runat="server" AutoGenerateColumns="False" MasterTableView-NoMasterRecordsText=""
                                Skin="Default">
                                <MasterTableView TableLayout="Fixed" DataKeyNames="RecordID" AllowPaging="false"
                                    PageSize="365" ClientDataKeyNames="RecordID" AllowAutomaticDeletes="True">
                               
                                    <Columns>
                                        <telerik:GridClientDeleteColumn ItemStyle-Width="16px" ConfirmText="Are you sure you want to delete this interval?" HeaderStyle-Width="15px" ButtonType="ImageButton" ImageUrl="/RMSImages/Session/delete.gif"></telerik:GridClientDeleteColumn>
                                        <telerik:GridBoundColumn UniqueName="RecordID" DataField="RecordID" Visible="false">
                                        </telerik:GridBoundColumn>

What do I need to handle after the client side deletes have taken place in order to save off the data in the grid?



1/7/2011: I see the problem here, the submit button was causing validation, which was throwing the error.
Richard Boarman
Top achievements
Rank 1
 asked on 06 Jan 2011
0 answers
63 views
I am seeing 2 issues:

1) I have a combobox in a RadPanelItem that is setup to update the page with Ajax. When i set the different panelitems to Expanded = true or false they do not reflect the change.

2) I tried to set the RadPanelBar as part of the Ajax and it clears the contents of all the RadPanelItems

<telerik:AjaxSetting AjaxControlID="countyRadComboBox">
            <UpdatedControls>
                <telerik:AjaxUpdatedControl ControlID="countyInfoRadPanelBar" LoadingPanelID="taxTabAjaxLoadingPanel" />
            </UpdatedControls>
        </telerik:AjaxSetting>


Manually expanding and collapsing works fine. Expanding and collapsing when i first load the page works fine.

It acts like because the page doesn't do a full postback the panels will not expand/collapse.

It is in a RadAjaxPanel and still not working as expected.
Wagon
Top achievements
Rank 1
 asked on 06 Jan 2011
Narrow your results
Selected tags
Tags
+? more
Top users last month
Rob
Top achievements
Rank 3
Bronze
Bronze
Iron
Sergii
Top achievements
Rank 1
Iron
Iron
Dedalus
Top achievements
Rank 1
Iron
Iron
Lan
Top achievements
Rank 1
Iron
Doug
Top achievements
Rank 1
Want to show your ninja superpower to fellow developers?
Top users last month
Rob
Top achievements
Rank 3
Bronze
Bronze
Iron
Sergii
Top achievements
Rank 1
Iron
Iron
Dedalus
Top achievements
Rank 1
Iron
Iron
Lan
Top achievements
Rank 1
Iron
Doug
Top achievements
Rank 1
Want to show your ninja superpower to fellow developers?
Want to show your ninja superpower to fellow developers?