RadGrid GridReport = (RadGrid)GridPlaceHolder.FindControl("GridReport"); if (GridReport.MasterTableView.Columns.FindByUniqueNameSafe("ObjectName") != null) { GridReport.MasterTableView.Columns.FindByUniqueName("ObjectName").Visible = false; GridReport.MasterTableView.Columns.FindByUniqueName("ObjectNameText").Visible = true; } //GridReport.ExportSettings.Excel.Format = GridExcelExportFormat.ExcelML; GridReport.ExportSettings.Excel.Format = GridExcelExportFormat.Html; GridReport.ExportSettings.IgnorePaging = true; GridReport.ExportSettings.OpenInNewWindow = true; GridReport.ExportSettings.ExportOnlyData = true; if (cbExportAllPages.Checked == true) GridReport.PageSize = GridReport.MasterTableView.VirtualItemCount; GridReport.DataSource = reportResult(Session["sqlStr"].ToString()); GridReport.Rebind(); GridReport.MasterTableView.ExportToExcel();RadNumericTextBox in a GridTemplateColumn.
The user can update the Quantity on the Order Detail grid and click the Save button to save the Order Detail. This Save button is displayed in the Order Detail NestedViewTemplate.

<form id="form1" runat="server"><telerik:RadScriptManager ID="Script" runat="server" /><div id="divPrincipal"> <telerik:RadCodeBlock ID="RadCodeBlock1" runat="server"> <script type="text/javascript"> function Start() { var notification = $find('<%= RadNotification1.ClientID %>'); notification.show(); } </script> </telerik:RadCodeBlock> <telerik:RadButton ID="btnTeste" runat="server" Text="Teste" OnClick="btnTeste_Click" OnClientClicked="Start" /> <asp:UpdatePanel ID="updNotificacao" UpdateMode="Conditional" runat="server" ChildrenAsTriggers="false"> <ContentTemplate> <telerik:RadNotification ID="RadNotification1" runat="server" EnableRoundedCorners="true" EnableShadow="true" Text="Começou a Processar" Title="Mensagem" Width="300" Height="100" /> <telerik:RadNotification ID="RadNotification2" runat="server" EnableRoundedCorners="true" EnableShadow="true" Text="Execucao Concluida" Title="Mensagem" Width="300" Height="100" /> </ContentTemplate> <Triggers> <asp:AsyncPostBackTrigger ControlID="btnTeste" EventName="Click" /> </Triggers> </asp:UpdatePanel> <asp:UpdatePanel runat="server" ID="updForm" UpdateMode="Conditional" ChildrenAsTriggers="false"> <ContentTemplate> <table> <tr> <td>Codigo:</td> <td> <telerik:RadTextBox ID="txtNome" runat="server" TextMode="SingleLine" /> </td> </tr> <tr> <td>Descricao:</td> <td> <telerik:RadTextBox ID="txtDescricao" runat="server" TextMode="SingleLine" /> </td> </tr> <tr> <td> <telerik:RadButton ID="btnInserir" Text="Inserir" runat="server" OnClick="btnInserir_Click" /> <asp:Label Text="" ID="lblResultado" runat="server" /> </td> </tr> </table> </ContentTemplate> <Triggers> <asp:AsyncPostBackTrigger ControlID="btnInserir" EventName="Click" /> </Triggers> </asp:UpdatePanel></div></form>protected void btnTeste_Click(object sender, EventArgs e){ Task task = Task.Run(() => { Thread.Sleep(8000); RadNotification2.Text = "Execução ConcluÃda!"; RadNotification2.Show(); }); task.Wait();}protected void btnInserir_Click(object sender, EventArgs e){ C001 c = new C001(); int i = c.RegistrarDados(txtDescricao.Text); if (i != 0) { lblResultado.Text = "Registro Inserido!"; } else { lblResultado.Text = "Registro nao pode ser Inserido!"; } updForm.Update();}<telerik:RadAjaxLoadingPanel ID="InvDateLoadPanel" runat="server" ForeColor="#EEB211" BackImageUrl="~/images/ajax/BMGI_GoldLoading.gif" BackgroundPosition="Center" /><telerik:RadAjaxManager ID="AjxMgr" runat="server"> <AjaxSettings> <telerik:AjaxSetting AjaxControlID="pnl_InvDate"> <UpdatedControls> <telerik:AjaxUpdatedControl ControlID="pnl_InvDate" LoadingPanelID="InvDateLoadPanel" /> </UpdatedControls> </telerik:AjaxSetting> </AjaxSettings> </telerik:RadAjaxManager><asp:Panel ID="pnl_InvDate" runat="server"> <table id="tbl_InvDate" border="0" cellpadding="4" cellspacing="0"> <tr> <td>Invoice Date</td> <td> <telerik:RadDatePicker ID="rdt_InvDate" runat="server" Skin="Hay" AutoPostBack="true" ShowPopupOnFocus="true" Width="100" OnSelectedDateChanged="selected" /> </td> </tr> </table></asp:Panel>
<%
@ Page Language="C#" AutoEventWireup="true" CodeFile="G1.aspx.cs" Inherits="G1" %>
<%
@ Register TagPrefix="telerik" Namespace="Telerik.Charting" Assembly="Telerik.Web.UI" %>
<%
@ Register TagPrefix="telerik" Namespace="Telerik.Web.UI" Assembly="Telerik.Web.UI" %>
<!
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 id="Head1" runat="server">
<!-- custom head section -->
<style type="text/css">
.viewWrap
{
padding: 15px;
background: #2291b5 0 0 url(Img/bluegradient.gif) repeat-x;
}
.contactWrap
{
padding: 10px 15px 15px 15px;
background: #fff;
color: #333;
}
.contactWrap td
{
padding: 0 20px 0 0;
}
.contactWrap td td
{
padding: 3px 20px 3px 0;
}
.contactWrap img
{
border: 1px solid #05679d;
}
</style>
<!-- end of custom head section -->
</
head>
<
body>
<form id="form1" runat="server">
<div>
<telerik:RadScriptManager runat="server" ID="RadScriptManager1" />
<telerik:RadAjaxManager ID="RadAjaxManager1" runat="server">
<AjaxSettings>
<telerik:AjaxSetting AjaxControlID="RadGrid1">
<UpdatedControls>
<telerik:AjaxUpdatedControl ControlID="RadGrid1" LoadingPanelID="RadAjaxLoadingPanel1" />
</UpdatedControls>
</telerik:AjaxSetting>
</AjaxSettings>
</telerik:RadAjaxManager>
<telerik:RadAjaxLoadingPanel ID="RadAjaxLoadingPanel1" runat="server" />
<%
-- DataSourceID="SqlDataSource1"--%>
<telerik:RadGrid ID="RadGrid1" OnPreRender="RadGrid1_PreRender"
runat="server" AutoGenerateColumns="False" AllowSorting="True" AllowMultiRowSelection="False"
AllowPaging="True" PageSize="5" GridLines="None" ShowGroupPanel="true" OnItemCreated="RadGrid1_ItemCreated"
OnItemCommand="RadGrid1_ItemCommand">
<PagerStyle Mode="NumericPages"></PagerStyle>
<%
-- DataSourceID="SqlDataSource1"--%>
<MasterTableView DataKeyNames="SrNo" AllowMultiColumnSorting="True"
GroupLoadMode="Server">
<NestedViewTemplate>
<asp:Panel runat="server" ID="InnerContainer" CssClass="viewWrap" Visible="false">
<telerik:RadTabStrip runat="server" ID="TabStip1" MultiPageID="Multipage1" SelectedIndex="0">
<Tabs>
<telerik:RadTab runat="server" Text="Comment" PageViewID="PageView2">
</telerik:RadTab>
</Tabs>
</telerik:RadTabStrip>
<telerik:RadMultiPage runat="server" ID="Multipage1" SelectedIndex="0" RenderSelectedPageOnly="false">
<telerik:RadPageView runat="server" ID="PageView2" Width="460px">
<div class="contactWrap">
<table cellpadding="0" cellspacing="0">
<tr>
<td>
<asp:Label ID="Label1" Font-Bold="true" Font-Italic="true" Text='<%# Eval("SrNo") %>'
Visible="false" runat="server" />
<asp:DetailsView ID="DetailsView1" DataSourceID="SqlDataSource4" AllowPaging="true" GridLines="None" Width="100%"
runat="server" Font-Italic="true" AutoGenerateRows="false">
<Fields>
<%
-- <asp:BoundField DataFormatString="{0:MM/dd/yyyy}" HeaderText="BirthDate:" HtmlEncode="false"
DataField="BirthDate" HeaderStyle-Font-Italic="false" HeaderStyle-Font-Bold="true" />--
%>
<asp:BoundField HeaderText="Comment" DataField="Comment" HeaderStyle-Font-Italic="false"
HeaderStyle-Font-Bold="true" />
</Fields>
</asp:DetailsView>
<asp:SqlDataSource ID="SqlDataSource4" ConnectionString="<%$ ConnectionStrings:db_TempConnectionString %>"
ProviderName="System.Data.SqlClient" SelectCommand="Select comment from tbApproveHistorical where comment ='first changes'"
runat="server">
<SelectParameters>
<asp:ControlParameter ControlID="Label1" PropertyName="Text" Type="String" Name="SrNo" />
</SelectParameters>
</asp:SqlDataSource>
</td>
</tr>
</table>
</div>
</telerik:RadPageView>
</telerik:RadMultiPage>
</asp:Panel>
</NestedViewTemplate>
<Columns>
<%
-- <telerik:GridTemplateColumn Visible="false">
<asp:Label ID="Label1" Font-Bold="true" Font-Italic="true" Text='<%# Eval("SrNo") %>'
Visible="false" runat="server" />
</telerik:GridTemplateColumn>--
%>
<telerik:GridBoundColumn SortExpression="SrNo" HeaderText="SrNo" HeaderButtonType="TextButton"
DataField="SrNo" UniqueName="SrNo" Visible="false">
</telerik:GridBoundColumn>
<telerik:GridBoundColumn SortExpression="Period" HeaderText="Period" HeaderButtonType="TextButton"
DataField="Period" UniqueName="Period">
</telerik:GridBoundColumn>
<telerik:GridBoundColumn SortExpression="Name" HeaderText="Name" HeaderButtonType="TextButton"
DataField="Name" UniqueName="Name">
</telerik:GridBoundColumn>
<telerik:GridBoundColumn SortExpression="Date" HeaderText="Date" HeaderButtonType="TextButton"
DataField="Date" UniqueName="Date">
</telerik:GridBoundColumn>
</Columns>
</MasterTableView>
<ClientSettings AllowDragToGroup="true" />
</telerik:RadGrid>
<%
-- <asp:SqlDataSource ID="SqlDataSource1" ConnectionString="<%$ ConnectionStrings:db_TempConnectionString %>"
ProviderName="System.Data.SqlClient" SelectCommand="SELECT ROW_NUMBER() OVER(ORDER BY AH.UpdatedOn DESC) As SrNo,
PC.PeriodContextRef AS Period,
(UR.UserFirstName + ' ' + UR.UserLastName) AS Name,
AH.Comment,
CONVERT(varchar,AH.UpdatedOn,101) AS [Date]
FROM tbApproveHistorical AH WITH(NOLOCK)
LEFT OUTER JOIN dbIndigo_Central.dbo.tbPeriodCont PC WITH(NOLOCK)
ON (AH.PeriodContextRefId = PC.PeriodContextRefId)
LEFT OUTER JOIN dbIndigo_Central.dbo.tbUser UR WITH(NOLOCK)
ON (AH.LoginId = UR.LoginId)
ORDER BY UpdatedOn DESC"
runat="server"></asp:SqlDataSource>--
%>
</div>
</form>
</
body>
</
html>
-------------------------------------------------------------------------
using
System;
using
System.Collections.Generic;
using
System.Linq;
using
System.Web;
using
System.Web.UI;
using
Telerik.Web.UI;
using
System.Web.UI.WebControls;
public
partial class G1 : System.Web.UI.Page
{
//protected void RadChart1_ItemDataBound(object sender, Telerik.Charting.ChartItemDataBoundEventArgs e)
//{
// e.SeriesItem.Name = (string)DataBinder.Eval(e.DataItem, "pName");
//}
 
protected void Page_Load(object sender, EventArgs e)
{
clsGetData obj = new clsGetData();
RadGrid1.DataSource = obj.GetData();
RadGrid1.MasterTableView.DataKeyNames =
new string[] { "SrNo" };
RadGrid1.MasterTableView.DataSource = obj.GetData();
}
protected void RadGrid1_PreRender(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
RadGrid1.MasterTableView.Items[0].Expanded =
true;
RadGrid1.MasterTableView.Items[0].ChildItem.FindControl(
"InnerContainer").Visible = true;
}
}
protected void RadGrid1_ItemCommand(object source, GridCommandEventArgs e)
{
if (e.CommandName == RadGrid.ExpandCollapseCommandName && e.Item is GridDataItem)
{
((
GridDataItem)e.Item).ChildItem.FindControl("InnerContainer").Visible =
!e.Item.Expanded;
}
//clsGetData obj = new clsGetData();
//((GridDataItem)e.Item).ChildItem.FindControl("DetailsView1").DataSource = obj.GetData();
// ((GridDataItem)e.Item).ChildItem.FindControl("DetailsView1").DataBind();
//if (((GridDataItem)e.Item).ChildItem.FindControl("DetailsView1").ClientID=="")
//{ }
}
protected void RadGrid1_ItemCreated(object sender, GridItemEventArgs e)
{
if (e.Item is GridNestedViewItem)
{
e.Item.FindControl(
"InnerContainer").Visible = ((GridNestedViewItem)e.Item).ParentItem.Expanded;
}
}
}
PagerTextFormat="Välj sida: <a onclick='javascript:openPreviousPage();'><img src='../Images/newimages/left_singel_arrow.png' style='cursor:pointer;' title='Previous' /></a> {4} <a onclick='javascript:openNextPage();'><img src='../Images/newimages/right_singel_arrow.png' style='cursor:pointer;' title='Next' /></a> Visar sida {0} av {1}, post {2} till {3} av {5}"