or
<telerik:RadGrid ID="RadGrid1" runat="server" AllowPaging="True" DataSourceID="Products" Skin="Forest" GridLines="None" OnItemDataBound="RadGrid1_ItemDataBound" Width="50%"> <ClientSettings> <Scrolling AllowScroll="True" UseStaticHeaders="True" SaveScrollPosition="true" ></Scrolling> <ClientEvents OnBatchEditCellValueChanged="CellValueChanged" /> </ClientSettings> <MasterTableView ShowFooter="true" AutoGenerateColumns="False" CurrentResetPageIndexAction="SetPageIndexToFirst" DataKeyNames="ID" DataSourceID="Products" Dir="LTR" Frame="Border" TableLayout="Auto" EditMode="Batch" BatchEditingSettings-OpenEditingEvent="Click" CommandItemDisplay="None"> <Columns> <telerik:GridBoundColumn DataField="ID" DataType="System.Int32" ReadOnly="True" UniqueName="ID" /> <telerik:GridBoundColumn DataField="ProductName" ReadOnly="true" HeaderText="Product" UniqueName="ProductName" /> <telerik:GridTemplateColumn DataField="Quantity" UniqueName="Quantity" HeaderText="Quantity" DataType="System.Int32"> <ItemTemplate> <%# Eval("Quantity")%> </ItemTemplate> <EditItemTemplate> <telerik:RadNumericTextBox ID="txtQuantity" runat="server" Width="40px" DataType="System.Int32" NumberFormat-DecimalDigits="0" Skin="Forest"> <ClientEvents OnBlur="Blur" OnFocus="Focus" /> </telerik:RadNumericTextBox> </EditItemTemplate> <FooterTemplate> <telerik:RadNumericTextBox ID="TextBox2" runat="server" Width="40px" DataType="System.Int32" NumberFormat-DecimalDigits="0" Skin="Forest" ReadOnly="True"> <ClientEvents OnLoad="Load" /> </telerik:RadNumericTextBox> </FooterTemplate> </telerik:GridTemplateColumn> </Columns> </MasterTableView> <PagerStyle Mode="NextPrevAndNumeric" /></telerik:RadGrid><telerik:RadScriptBlock runat="server" ID="RadScriptBlock1"> <script type="text/javascript"> var sumInput = null; var tempValue = 0; function Load(sender, args) { sumInput = sender; } function Blur(sender, args) { sumInput.set_value(tempValue + sender.get_value()); } function Focus(sender, args) { tempValue = sumInput.get_value() - sender.get_value(); } function CellValueChanged(sender, args) { var row = args.get_row(); var rowIndex = row.rowIndex; var columnName = args.get_columnUniqueName(); var cell = args.get_cell(); var oldValue = args.get_cellValue(); var newValue = '' + args.get_editorValue(); var key = '' + row.cells[0].textContent //debugger var hc = document.getElementById('<%= ProductHash.ClientID%>'); if (hc.value == '') { if (newValue == "0") { return; } aProducts = new Array(); aProducts[key] = newValue; } else { var aProducts = JSON.parse(hc.value); if (aProducts == null) { if (newValue == "0") { return; } aProducts = new Array(); aProducts[key] = newValue; } else { aProducts[key] = newValue; } } hc.value = JSON.stringify(aProducts); } </script></telerik:RadScriptBlock> Protected Sub btnProcess_Click(sender As Object, e As EventArgs) Try 'Retrieve total quantity from footer Dim footer As GridFooterItem = DirectCast(RadGrid1.MasterTableView.GetItems(GridItemType.Footer)(0), GridFooterItem) Dim TotalQty As String = TryCast(footer.FindControl("TextBox2"), RadNumericTextBox).Text.......do some stuff Catch ex As Exception Response.Write(ex.ToString) End Try End SubI have tried this: Dim footer As GridFooterItem = DirectCast(RadGrid1.MasterTableView.GetItems(GridItemType.Footer)(0), GridFooterItem) Dim TotalQty As RadNumericTextBox = TryCast(footer.FindControl("TextBox2"), RadNumericTextBox) TotalQty.Text = dr("TotalQuantity")And, I have tried this: Dim TotalQty As RadNumericTextBox = FindControlRecursive(Page, "TextBox2") TotalQty.Text = dr("TotalQuantity")<telerik:RadGrid ID="RadGrid1" runat="server" AllowPaging="True" DataSourceID="Products" Skin="Forest" GridLines="None" OnItemDataBound="RadGrid1_ItemDataBound" Width="50%"> <ClientSettings> <Scrolling AllowScroll="True" UseStaticHeaders="True" SaveScrollPosition="true" ></Scrolling> <ClientEvents OnBatchEditCellValueChanged="CellValueChanged" /> </ClientSettings> <MasterTableView ShowFooter="true" AutoGenerateColumns="False" CurrentResetPageIndexAction="SetPageIndexToFirst" DataKeyNames="ID" DataSourceID="Products" Dir="LTR" Frame="Border" TableLayout="Auto" EditMode="Batch" BatchEditingSettings-OpenEditingEvent="Click" CommandItemDisplay="None"> <Columns> <telerik:GridBoundColumn DataField="ID" DataType="System.Int32" ReadOnly="True" UniqueName="ID" /> <telerik:GridBoundColumn DataField="ProductName" ReadOnly="true" HeaderText="Product" UniqueName="ProductName" /> <telerik:GridTemplateColumn DataField="Quantity" UniqueName="Quantity" HeaderText="Quantity" DataType="System.Int32"> <ItemTemplate> <%# Eval("Quantity")%> </ItemTemplate> <EditItemTemplate> <telerik:RadNumericTextBox ID="txtQuantity" runat="server" Width="40px" DataType="System.Int32" NumberFormat-DecimalDigits="0" Skin="Forest"> <ClientEvents OnBlur="Blur" OnFocus="Focus" /> </telerik:RadNumericTextBox> </EditItemTemplate> <FooterTemplate> <telerik:RadNumericTextBox ID="TextBox2" runat="server" Width="40px" DataType="System.Int32" NumberFormat-DecimalDigits="0" Skin="Forest" ReadOnly="True"> <ClientEvents OnLoad="Load" /> </telerik:RadNumericTextBox> </FooterTemplate> </telerik:GridTemplateColumn> </Columns> </MasterTableView> <PagerStyle Mode="NextPrevAndNumeric" /></telerik:RadGrid><telerik:RadGrid SkinID="Paging" ID="ResultsGrid" runat="server" AllowCustomPaging = "True" AllowPaging="False" OnInit="DataGridInit" OnItemDataBound="BindColumnValues" OnNeedDataSource="DataGrid_NeedDataSource" OnItemCreated="ItemManipulation" OnSortCommand="PerformSort" OnItemCommand="ResultsGridItemCommand" ShowGroupPanel="true" AutoGenerateColumns="false" GridLines="none" ShowFooter="false" EnableLinqExpressions="false"> <PagerStyle Mode="NextPrevNumericAndAdvanced"></PagerStyle> <GroupingSettings ExpandTooltip="Expand" CollapseTooltip="Collapse" /> <MasterTableView Summary="<%$ Resources: ResultsTableSummary %>" ShowGroupFooter="true" ClientDataKeyNames="" DataKeyNames="ItemDocumentKey,FundingKey" CssClass="rgWrapFalse"> <Columns> <telerik:GridBoundColumn UniqueName="ItemNumber" DataField="ItemNumber" HeaderText="<%$Resources: PostAwardCommon, ItemNumber %>" DataType="System.Int32" Visible="false"/> <telerik:GridBoundColumn UniqueName="ShipToCode" DataField="ShipToCode" HeaderText="<%$ Resources: Common, DeliverTo %>" DataType="System.String" SortExpression="ShipToCode" /> <telerik:GridBoundColumn DataField="AccountId" HeaderText="<%$ Resources: PostAwardCommon, AccountId %>" UniqueName="AccountId" AllowSorting="true"/> <telerik:GridBoundColumn DataField="AccountCode" HeaderText="<%$ Resources: PostAwardCommon, AccountingCode %>" UniqueName="AccountCode" AllowSorting="true"/> <telerik:GridBoundColumn DataField="AwardedAmount" HeaderText="<%$ Resources: PostAwardCommon, Awarded %>" AllowSorting="true" UniqueName="AwardedAmount" HeaderStyle-CssClass="rgHeader width30 rgHeaderAlignLeft" ItemStyle-HorizontalAlign="Right"/> <telerik:GridBoundColumn DataField="AcceptedToDate" HeaderText="<%$ Resources: PostAwardCommon, AcceptedtoDateHeaderText %>" AllowSorting="true" UniqueName="AcceptedToDate" HeaderStyle-CssClass="rgHeader width45 rgHeaderAlignLeft" ItemStyle-HorizontalAlign="Right"/> <telerik:GridBoundColumn DataField="RemainingAmount" HeaderText="<%$ Resources: PostAwardCommon, Remaining %>" AllowSorting="true" UniqueName="RemainingAmount" HeaderStyle-CssClass="rgHeader width30 rgHeaderAlignLeft" ItemStyle-HorizontalAlign="Right"/> <telerik:GridBoundColumn UniqueName="AcceptedDate" HeaderText="<%$ Resources: PostAwardCommon, ActualAcceptedDate %>" ItemStyle-HorizontalAlign="Center" /> <telerik:GridBoundColumn UniqueName="AcceptedAmount" FooterStyle-HorizontalAlign="Left" FooterText="Total Accepted: " GroupByExpression="AcceptedAmount Group By AcceptedAmount" DataType="System.Double" Aggregate="Sum" DataField="AcceptedAmount" ItemStyle-HorizontalAlign="Right"/> </Columns> <GroupByExpressions> <telerik:GridGroupByExpression> <SelectFields> <telerik:GridGroupByField FieldAlias="ItemNumber" HeaderText="<%$ Resources: PostAwardCommon, ItemNumber %>" FieldName="ItemNumber"></telerik:GridGroupByField> </SelectFields> <GroupByFields> <telerik:GridGroupByField FieldName="ItemNumber" SortOrder="Ascending"></telerik:GridGroupByField> </GroupByFields> </telerik:GridGroupByExpression> </GroupByExpressions> </MasterTableView> </telerik:RadGrid>| <telerik:RadEditor |
| ID="RadEditor1" |
| runat="server" |
| Width="100%" |
| ToolsFile="../RadControls/Editor/BasicTools.xml" |
| skin="Vista" |
| EditModes="Design" |
| EnableResize="False" |
| EnableTheming="True" |
| StripFormattingOptions="AllExceptNewLines" |
| ToolbarMode="Default" |
| OnClientCommandExecuting="OnClientCommandExecuting" |
| OnClientCommandExecuted="OnClientCommandExecuted"> |
| </telerik:RadEditor> |
| var curTables = []; |
| var curTds = []; |
| function IsObjectInArray(elem, array) |
| { |
| if (!array || !array.length) return false; |
| for (var i=0; i < array.length; i++) |
| { |
| if (elem == array[i]) return true; |
| } |
| return false; |
| } |
| function OnClientCommandExecuting(editor, args) { |
| var commandName = args.get_commandName(); |
| if ("InsertTable" == commandName) { |
| var cArea = editor.get_contentArea(); |
| var tables = cArea.getElementsByTagName("TABLE"); |
| var tds = cArea.getElementsByTagName("TD"); |
| for (var i = 0; i < tables.length; i++) { |
| curTables[curTables.length] = tables[i]; |
| } |
| for (var j = 0; j < tds.length; j++) { |
| curTds[curTds.length] = tds[j]; |
| } |
| } |
| } |
| function OnClientCommandExecuted(editor, args) { |
| var commandName = args.get_commandName(); |
| if ("InsertTable" == commandName) { |
| var cArea = editor.get_contentArea(); |
| var tables = cArea.getElementsByTagName("TABLE"); |
| var tds = cArea.getElementsByTagName("TD"); |
| for (var i = 0; i < tables.length; i++) { |
| var oTable = tables[i]; |
| if (!IsObjectInArray(oTable, curTables)) { |
| oTable.style.borderCollapse = "collapse"; |
| oTable.style.border = "Black 1px solid"; |
| oTable.style.width = "100%"; |
| } |
| } |
| for (var j = 0; j < tds.length; j++) { |
| var oTd = tds[j]; |
| if (!IsObjectInArray(oTd, curTds)) { |
| oTd.style.border = "1px solid black"; |
| } |
| } |
| } |
| } |

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebForm1.aspx.cs" Inherits="WebApplication2.WebForm1" %><%@ Register Assembly="Telerik.Web.UI" Namespace="Telerik.Web.UI" TagPrefix="telerik" %><!DOCTYPE html><html xmlns="http://www.w3.org/1999/xhtml"><head runat="server"><meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> <title></title></head><body> <form id="form1" runat="server"> <telerik:RadScriptManager ID="RadScriptManager1" runat="server"></telerik:RadScriptManager> <telerik:RadGrid ID="RadGrid1" runat="server" AutoGenerateColumns="False" CellSpacing="0" Culture="zh-CN" GridLines="None"> <MasterTableView> <Columns> <telerik:GridBoundColumn DataField="name" FilterControlAltText="Filter name column" HeaderText="name" UniqueName="name"> </telerik:GridBoundColumn> <telerik:GridTemplateColumn DataField="age" FilterControlAltText="Filter age column" HeaderText="age" UniqueName="age"> <ItemTemplate> <telerik:RadTextBox ID="RadTextBox1" runat="server" Text='<%# Eval("age") %>'></telerik:RadTextBox> </ItemTemplate> </telerik:GridTemplateColumn> </Columns> </MasterTableView> </telerik:RadGrid> </form></body></html>using System;using System.Data;using System.Web;using System.Web.UI;using System.Web.UI.WebControls;namespace WebApplication2{ public partial class WebForm1 : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { if(!IsPostBack) { DataTable dt = new DataTable(); dt.Columns.Add("name"); dt.Columns.Add("age"); for (int i = 0; i < 20; i++) { DataRow r = dt.NewRow(); r["name"] = "name" + (char)('A' + i); r["age"] = i; dt.Rows.Add(r); } RadGrid1.DataSource = dt; RadGrid1.DataBind(); } } }}