telerik - Radgrid unable to download file using linkbutton in NestedViewtemplate -


i'm using radgrid nestedviewttemplate show details of product on row expand.i have linkbutton in nestedview template when clicked downloads file.my code use download works outside radgrid when included in nestedviewtemplate fails download.here's code.

 <telerik:radgrid id="loggedinuserownresourcesradgrid"   autogeneratecolumns="false">  <mastertableview autogeneratecolumns="false">  <columns>  <telerik:gridtemplatecolumn   datafield=" name">  <headertemplate><asp:linkbutton id="linkbuttonfortitleofgridviewcolumn"     runat="server" commandname="sort" commandargument="name">resource name</asp:linkbutton>  </headertemplate>  <itemtemplate>  <asp:linkbutton id="linkbuttonofaparticularname"  runat="server" text='<%# eval(" name")%>'></asp:linkbutton>   </itemtemplate>  </telerik:gridtemplatecolumn>  </columns>  <nestedviewsettings >  <parenttablerelation>  <telerik:gridrelationfields detailkeyfield="id" masterkeyfield="id"/>  </parenttablerelation>  </nestedviewsettings>  <nestedviewtemplate>  <asp:panel id="nestedviewpanel"  runat="server">  <div >  <fieldset >  <legend ><b>detail info on resource :   <%#eval("name") %></b>  </legend>    download file :   <asp:linkbutton id="filenamelinkbutton" text='<%# eval("filename")%>' commandargument='<%#    eval("pathtofile")%>'  oncommand="filenamelinkbutton_clicked" commandname="filenamelinkbutton_clicked"   runat="server"  tooltip="click download" forecolor="blue"  ></asp:linkbutton>   </fieldset>   </div>  </asp:panel> </nestedviewtemplate>   </mastertableview> </telerik:radgrid>    protected void filenamelinkbutton_clicked(object sender, commandeventargs e)     {           string downloadfilename = e.commandargument.tostring();              try             {                 fileinfo resourcefilepathusingfileinfo = new fileinfo("~/" + downloadfilename);                 string filename = resourcefilepathusingfileinfo.name;                 response.contenttype = "application/download";                 response.appendheader("content-disposition", "attachment;filename=" + filename);                  response.transmitfile(server.mappath("~/" + "clientbin/" + "uploads/" + filename));                    httpcontext.current.applicationinstance.completerequest();              //   response.end();              }             catch (exception ex)             {                }         } 

please try below code snippet.

  1. if grid ajaxify telerik ajax manager.

js

    <script type="text/javascript">         function onrequeststart(sender, args) {             if (args.get_eventtarget().indexof("filenamelinkbutton") >= 0) {                 args.set_enableajax(false);             }         }     </script> 

aspx

<telerik:radajaxmanager id="radajaxmanager1" runat="server" clientevents-onrequeststart="onrequeststart">     <ajaxsettings>         <telerik:ajaxsetting ajaxcontrolid="radgrid1">             <updatedcontrols>                 <telerik:ajaxupdatedcontrol controlid="radgrid1" />             </updatedcontrols>         </telerik:ajaxsetting>     </ajaxsettings> </telerik:radajaxmanager> 
  1. if grid ajaxify update panel.

aspx

<triggers>               <asp:postbacktrigger controlid="filenamelinkbutton" /> </triggers> 

or

c#

protected void radgrid1_itemdatabound(object sender, griditemeventargs e) {     if (e.item gridnestedviewitem)     {         gridnestedviewitem nesteditem = (gridnestedviewitem)e.item;         linkbutton filenamelinkbutton = (linkbutton)nesteditem.findcontrol("filenamelinkbutton");         scriptmanager.getcurrent(page).registerpostbackcontrol(filenamelinkbutton);     }  } 

Comments