<
telerik:RadGrid ID="rgTransactions" runat="server" AllowPaging="True" DataSourceID="dsTransactions" GridLines="None" AutoGenerateEditColumn="True" Skin="Office2007" AllowAutomaticDeletes="True" AllowAutomaticInserts="True" AllowAutomaticUpdates="True">
<
MasterTableView autogeneratecolumns="False" datakeynames="TransactionID" datasourceid="dsTransactions" Caption="Transactions" EditMode="EditForms" commanditemdisplay="Top" InsertItemPageIndexAction="ShowItemOnFirstPage">
<CommandItemSettings AddNewRecordText="Add New Transaction" />
<Columns>
<
telerik:GridBoundColumn DataField="TransactionID" ReadOnly="True" HeaderText="TransactionID" SortExpression="TransactionID" Visible="false" UniqueName="TransactionID" DataType="System.Int32"></telerik:GridBoundColumn>
<
telerik:GridBoundColumn DataField="DonorID" HeaderText="DonorID" Visible="false" SortExpression="DonorID" UniqueName="DonorID" DataType="System.Int32" ReadOnly="true"></telerik:GridBoundColumn>
<telerik:GridTemplateColumn DataField="CheckNumber" HeaderText="Check Number" SortExpression="CheckNumber" UniqueName="CheckNumber">
<EditItemTemplate>
<telerik:RadTextBox ID="txtCheckNumber" Runat="server" Skin="Office2007"
Text='<%# Bind("CheckNumber") %>' Width="125px">
</telerik:RadTextBox>
</EditItemTemplate>
<ItemTemplate>
<asp:Label ID="CheckNumberLabel" runat="server"
Text='<%# Eval("CheckNumber") %>'></asp:Label>
</ItemTemplate>
</telerik:GridTemplateColumn>
<telerik:GridTemplateColumn DataField="CreditAmount" HeaderText="Credit Amount"
SortExpression="CreditAmount" UniqueName="CreditAmount">
<EditItemTemplate>
<telerik:RadNumericTextBox ID="txtCreditAmount" Runat="server"
Culture="English (United States)" DbValue='<%# Bind("CreditAmount") %>'
Skin="Office2007" Type="Currency" Width="125px">
</telerik:RadNumericTextBox>
</EditItemTemplate>
<ItemTemplate>
<asp:Label ID="CreditAmountLabel" runat="server"
Text='<%# Eval("CreditAmount") %>'></asp:Label>
</ItemTemplate>
</telerik:GridTemplateColumn>
<telerik:GridTemplateColumn DataField="DateEntered" HeaderText="Date Entered"
SortExpression="DateEntered" UniqueName="DateEntered">
<EditItemTemplate>
<telerik:RadDatePicker ID="txtTransactionDateNew" Runat="server"
Culture="English (United States)" DbSelectedDate='<%# Bind("DateEntered") %>'
Skin="Office2007">
<calendar skin="Office2007" usecolumnheadersasselectors="False"
userowheadersasselectors="False" viewselectortext="x" ShowRowHeaders="False">
</calendar>
</telerik:RadDatePicker>
</EditItemTemplate>
<ItemTemplate>
<asp:Label ID="DateEnteredLabel" runat="server"
Text='<%# Eval("DateEntered") %>'></asp:Label>
</ItemTemplate>
</telerik:GridTemplateColumn>
<telerik:GridCheckBoxColumn DataField="FifteenPercent"
DataType="System.Boolean" HeaderText="Fifteen Pct"
SortExpression="FifteenPercent" UniqueName="FifteenPercent">
</telerik:GridCheckBoxColumn>
<
telerik:GridBoundColumn DataField="SortDate" HeaderText="SortDate"
SortExpression="SortDate" UniqueName="SortDate" DataType="System.DateTime"
ReadOnly="True" Visible="False"></telerik:GridBoundColumn>
<telerik:GridButtonColumn CommandName="Delete"
ConfirmText="Are you sure you want to delete this transaction?" Text="Delete"
UniqueName="column">
</telerik:GridButtonColumn>
</Columns>
</
MasterTableView>
<ClientSettings EnablePostBackOnRowClick="True">
<Selecting AllowRowSelect="True" />
</ClientSettings>
</telerik:RadGrid>

| GridTableView tableView = new GridTableView(radGrid1); |
| if (lastAddedDetailTable.ID == "RadGrid1") |
| { |
| radGrid1.MasterTableView.DetailTables.Add(tableView); |
| } |
| else |
| { |
| ((GridTableView)lastAddedDetailTable).DetailTables.Add(tableView); |
| } |
| //tableView.ItemsCreated += new GridItemEventHandler(radGrid1_ItemCreated); |
| //tableView.Width = Unit.Percentage(100); |
| //tableView.Font.Bold = true; |
| //tableView.BorderWidth = 2; |
| //tableView.BorderColor = System.Drawing.Color.Red; |
| if (filterElement.Attribute("parameters") != null) |
| tableView.Name = filterElement.Attribute("parameters").Value; |
| if (filterElement.Attribute("dataKeyNames") != null) |
| tableView.DataKeyNames = filterElement.Attribute("dataKeyNames").Value.Split(','); |
| string[] columnNames = filterElement.Attribute("columns").Value.ToString().Split(','); |
| foreach (string columnName in columnNames) |
| { |
| GridBoundColumn boundColumn = new GridBoundColumn(); |
| tableView.Columns.Add(boundColumn); |
| colName = columnName; |
| if (colName.Contains("[F]")) |
| { |
| boundColumn.Visible = false; |
| colNamecolName = colName.Substring(0, colName.IndexOf("[F]")); |
| } |
| boundColumn.UniqueName = colName; |
| boundColumn.DataField = colName; |
| boundColumn.HeaderText = colName; |
| boundColumn.HeaderStyle.Font.Bold = true; |
| } |
| GridTemplateColumn templateColumn = new GridTemplateColumn(); |
| tableView.Columns.Add(templateColumn); |
| templateColumn.ItemTemplate = new GridTemplate(filterElement.Attribute("name").Value); |
| using System; |
| using System.Collections.Generic; |
| using System.Linq; |
| using System.Text; |
| using System.Web.UI; |
| using Telerik.Web.UI; |
| namespace Data.Reports |
| { |
| public class GridTemplate : ITemplate |
| { |
| protected RadGrid childGrid; |
| private string colName; |
| public GridTemplate(string cName) |
| { |
| colName = cName; |
| } |
| public void InstantiateIn(System.Web.UI.Control container) |
| { |
| childGrid = new RadGrid(); |
| childGrid.ID = colName; |
| //childGrid.NeedDataSource +=new GridNeedDataSourceEventHandler(childGrid_NeedDataSource); |
| childGrid.DataSource = DBClass.GetDataSP(Grid.referencePath, null); |
| container.Controls.Add(childGrid); |
| } |
| public void childGrid_NeedDataSource(object source, Telerik.Web.UI.GridNeedDataSourceEventArgs e) |
| { |
| childGrid.DataSource = DBClass.GetDataSP(Grid.referencePath, null); |
| } |
| } |
| } |