I have Radgrid with 6 columns
One of the column say 4th_col can have multiple rows within itself.
Basically the parent row id will be the key for retrieving the rows for 4th column.
I am doing inline editing on complet parent rows which means the 4ht column rows are also open.Now on top of that I should be able to add rows in the 4th column.
I hope I am clear
Do you have any sugesstions/ approaches?
Thanks
myData.Rows.Add(0, 0, "Ben", "has no kids", DBNull.Value);myData.Rows.Add(1, 0, "Ralph", "has no kids", DBNull.Value);myData.Rows.Add(2, 0, "Betty", "is a mother", DBNull.Value);myData.Rows.Add(3, 0, "David", "is a father", DBNull.Value);myData.Rows.Add(0, 0, "Ralph's Age", "33", 1);myData.Rows.Add(0, 0, "Ralph's Eye Color", "Red", 1);myData.Rows.Add(0, 0, "David's Age", "77", 3);myData.Rows.Add(0, 4, "Sam", "is David's son", 3);myData.Rows.Add(0, 5, "Beth", "is David's daughter", 3);myData.Rows.Add(0, 6, "Ruth", "is Betty's daughter", 2);myData.Rows.Add(0, 0, "Beth's Blood Type", "O+", 5);myData.Rows.Add(0, 0, "Ruth's Height", "82 inches", 6);myData.Rows.Add(0, 0, "Ruth's Shoe Size", "10", 6);<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %><%@ Register Assembly="RadGrid.Net2" Namespace="Telerik.WebControls" TagPrefix="rad" %><!DOCTYPE html><html xmlns="http://www.w3.org/1999/xhtml"><head runat="server"> <title></title></head><body> <form id="form1" runat="server"> <div> <%-- Old, but working <rad:RadGrid runat="server" ID="MyRadGrid" OnNeedDataSource="MyRadGrid_NeedDataSource" MasterTableView-HierarchyLoadMode="Client" OnPreRender="MyRadGrid_PreRender"> <MasterTableView HierarchyDefaultExpanded="true" HierarchyLoadMode="Client" DataKeyNames="TheParent, GUID" FilterExpression="TheParent = 0" ShowHeadersWhenNoRecords="false"> <SelfHierarchySettings ParentKeyName="TheParent" KeyName="GUID" MaximumDepth="3" /> </MasterTableView> <ClientSettings AllowExpandCollapse="true"></ClientSettings> </rad:RadGrid> --%> <rad:RadGrid runat="server" ID="MyRadGrid" OnNeedDataSource="MyRadGrid_NeedDataSource" MasterTableView-HierarchyLoadMode="Client" OnPreRender="MyRadGrid_PreRender"> <MasterTableView HierarchyDefaultExpanded="true" HierarchyLoadMode="Client" DataKeyNames="DirectParent, ID" ShowHeadersWhenNoRecords="false"> <SelfHierarchySettings ParentKeyName="DirectParent" KeyName="ID" MaximumDepth="3" /> <%-- <DetailTables> <rad:GridTableView HierarchyDefaultExpanded="true" HierarchyLoadMode="Client" DataKeyNames="DirectParent, ChildID" ShowHeadersWhenNoRecords="false"> <SelfHierarchySettings ParentKeyName="DirectParent" KeyName="ChildID" MaximumDepth="1" /> </rad:GridTableView> </DetailTables> --%> </MasterTableView> <ClientSettings AllowExpandCollapse="true"></ClientSettings> </rad:RadGrid> </div> </form></body></html><telerik:RadGrid runat="server" ID="rgrdClaimantStatus" AutoGenerateColumns="False" Skin="Windows7" OnInt="InitializeGrid" Style="margin-top: 0px" OnNeedDataSource="rgrdClaimantStatus_NeedDataSource" OnUpdateCommand="rgrdClaimantStatus_UpdateCommand" OnInsertCommand="rgrdClaimantStatus_InsertCommand" OnDeleteCommand="rgrdClaimantStatus_DeleteCommand" OnItemCommand="rgrdClaimantStatus_ItemCommand" OnItemDataBound="rgrdClaimantStatus_ItemDataBound" OnPreRender="rgrdClaimantStatus_PreRender" OnItemCreated="rgrdClaimantStatus_ItemCreated" TabIndex="21" > <MasterTableView commanditemdisplay="Top" EditMode="InPlace" ShowHeadersWhenNoRecords="True"> <Columns> <telerik:GridButtonColumn CommandName="Delete" ButtonType="ImageButton" ImageUrl="~/PPSPortal/images/Cancel.gif" UniqueName="DeleteColumn" ShowInEditForm="True" /> <telerik:GridTemplateColumn UniqueName="StatusDesc" DataField="StatusDesc" HeaderText="Status" FooterStyle-Font-Bold="true" FooterStyle-Wrap="false" ItemStyle-Wrap="false"> <ItemTemplate> <telerik:RadComboBox runat="server" ID="rcbClaimantStatusCode" Width="100" Text='<%# Bind("StatusDesc") %>' /> </ItemTemplate> </telerik:GridTemplateColumn> <telerik:GridTemplateColumn UniqueName="DateFrom" DataField="DateFrom" HeaderText="Date From" FooterStyle-Font-Bold="true" FooterStyle-Wrap="false" ItemStyle-Wrap="false"> <ItemTemplate> <telerik:RadDatePicker runat="server" ID="rdpClaimantStatusStartDate" width="150" DbSelectedDate='<%# Bind("DateFrom") %>'> <Calendar UseRowHeadersAsSelectors="False" UseColumnHeadersAsSelectors="False" ViewSelectorText="x"></Calendar> <DateInput DisplayDateFormat="M/d/yyyy" DateFormat="M/d/yyyy" TabIndex="2" /> <DatePopupButton ImageUrl="" HoverImageUrl="" TabIndex="2"></DatePopupButton> </telerik:RadDatePicker> </ItemTemplate> </telerik:GridTemplateColumn> <telerik:GridTemplateColumn UniqueName="DateTo" DataField="DateTo" HeaderText="Date To" FooterStyle-Font-Bold="true" FooterStyle-Wrap="false" ItemStyle-Wrap="false"> <ItemTemplate> <telerik:RadDatePicker runat="server" ID="rdpClaimantEndDate" width="150" onkeydown="ClaimantStatusEndDateKeyDown(this, event)" DbSelectedDate='<%# Bind("DateTo") %>'> <Calendar UseRowHeadersAsSelectors="False" UseColumnHeadersAsSelectors="False" ViewSelectorText="x"></Calendar> <DateInput DisplayDateFormat="M/d/yyyy" DateFormat="M/d/yyyy" TabIndex="2" /> <DatePopupButton ImageUrl="" HoverImageUrl="" TabIndex="2"></DatePopupButton> </telerik:RadDatePicker> </ItemTemplate> </telerik:GridTemplateColumn> <telerik:GridTemplateColumn UniqueName="DateCreated" DataField="DateCreated" HeaderText="Date Created" FooterStyle-Font-Bold="true" FooterStyle-Wrap="false" ItemStyle-Wrap="false"> <ItemTemplate> <asp:Label runat="server" ID="lblClaimantDateCreated" Width="150" Text='<%# Bind("DateCreated") %>' /> </ItemTemplate> </telerik:GridTemplateColumn> <telerik:GridTemplateColumn UniqueName="DateEdited" DataField="DateEdited" HeaderText="Date Edited" FooterStyle-Font-Bold="true" FooterStyle-Wrap="false" ItemStyle-Wrap="false"> <ItemTemplate> <asp:Label runat="server" ID="lblClaimantDateEdited" Width="150" Text='<%# Bind("DateEdited") %>' /> </ItemTemplate> </telerik:GridTemplateColumn> <telerik:GridTemplateColumn UniqueName="ModifiedBy" DataField="ModifiedBy" HeaderText="Modified By" FooterStyle-Font-Bold="true" FooterStyle-Wrap="false" ItemStyle-Wrap="false"> <ItemTemplate> <asp:Label runat="server" ID="lblClaimantModifiedBy" Width="150" Text='<%# Bind("ModifiedBy") %>' /> </ItemTemplate> </telerik:GridTemplateColumn> </Columns> </MasterTableView> <ClientSettings> <Selecting AllowRowSelect="True" EnableDragToSelectRows="false" /> <DataBinding EnableCaching="True" /> <ClientEvents OnKeyPress="KeyPressed" /> </ClientSettings> </telerik:RadGrid>protected void rgrdClaimantStatus_ItemDataBound(object source, GridItemEventArgs e) { if (e.Item is GridDataItem) { //SetEditModeColumnWidths(e.Item as GridDataItem); RadComboBox status = ((e.Item as GridDataItem)["StatusDesc"].FindControl("rcbClaimantStatusCode") as RadComboBox); LoadClaimantStatusList(status, Convert.ToInt32((GetSelectedCompany()))); } }protected void LoadClaimantStatusList(RadComboBox rddlStatus, int companyId) { ReferenceProcess rc = new ReferenceProcess(); Dictionary<int,string> statusList = rc.GetClaimantStatusList(CentralDBConnString, companyId); rddlStatus.DataSource = statusList; rddlStatus.DataTextField = "Value"; rddlStatus.DataValueField = "Key"; rddlStatus.DataBind(); rddlStatus.Items.Insert(0, new RadComboBoxItem("Select a status", string.Empty)); } 
<telerik:RadGrid ID="RecipientsGrid" runat="server" AutoGenerateColumns="false" EnableViewState="true" PageSize="5" AllowFilteringByColumn="true" AllowPaging="true" AllowSorting="True">
<EditFormSettings EditFormType="Template">
<FormTemplate>
<telerik:RadComboBox ID="CountryCombo" runat="server">
</telerik:RadComboBox>
<telerik:RadComboBox ID="ProvinceCombo" runat="server" Width="325" >
</telerik:RadComboBox>
</FormTemplate>
</EditFormSettings>
</telerik:RadGrid>
Private Sub RecipientsGrid_ItemDataBound(sender As Object, e As Telerik.Web.UI.GridItemEventArgs) Handles RecipientsGrid.ItemDataBound If TypeOf e.Item Is GridEditFormItem AndAlso e.Item.IsInEditMode Then Dim editItem As GridEditFormItem = DirectCast(e.Item, GridEditFormItem) Dim ProvinceCombo As RadComboBox = TryCast(editItem.FindControl("ProvinceCombo"), RadComboBox) Dim CountryCombo As RadComboBox = TryCast(editItem.FindControl("CountryCombo"), RadComboBox) Dim CityCombo As RadComboBox = TryCast(editItem.FindControl("CityCombo"), RadComboBox) '** Populate ComboBoxes and define their Default Value Using context As New DataEntities With CountryCombo .DataValueField = "CountryId" .DataTextField = "CountryName" .DataSource = context.Countries.OrderBy(Function(x) x.displayOrder).ToList End With CountryCombo.Width = Unit.Pixel(320) CountryCombo.DataBind() End Using Using context As New DataEntities With ProvinceCombo .DataValueField = "ProvinceId" .DataTextField = "NameEnglish" .DataSource = context.Provinces.Where(Function(x) x.CountryId = CountryId).OrderBy(Function(x) x.NameEnglish).ToList End With ProvinceCombo.Width = Unit.Pixel(320) ProvinceCombo.DataBind() End Using Using context As New DataEntities With CityCombo .DataValueField = "CityId" .DataTextField = "CityName" .DataSource = context.Cities.Where(Function(x) x.ProvinceID = ProvinceId).OrderBy(Function(x) x.CityName).ToList End With CityCombo.Width = Unit.Pixel(320) CityCombo.DataBind() End Using SetComboBoxDefault(CountryId, CountryCombo, "Country") SetComboBoxDefault(ProvinceId, ProvinceCombo, "Province/State") SetComboBoxDefault(CityId, CityCombo, "City") End If End Sub Public Sub SetComboBoxDefault(ByVal FindItemByValue As Integer, ByVal Control As RadComboBox, ByVal DisplayText As String) Dim ComboBoxItem As RadComboBoxItem If FindItemByValue >0 Then ComboBoxItem = Control.FindItemByValue(FindItemByValue) ComboBoxItem.Selected = True Else Control.Items.Insert(0, New RadComboBoxItem("-- Please select a " & DisplayText & " --", String.Empty)) End If End Sub Private Sub RecipientsGrid_ItemCreated(sender As Object, e As Telerik.Web.UI.GridItemEventArgs) Handles RecipientsGrid.ItemCreatedIf TypeOf e.Item Is GridEditFormItem AndAlso e.Item.IsInEditMode Then 'if the item is in edit mode Dim editItem As GridEditFormItem = DirectCast(e.Item, GridEditFormItem) Dim CountryCombo As RadComboBox = DirectCast(editItem.FindControl("CountryCombo"), RadComboBox) CountryCombo.AutoPostBack = True AddHandler CountryCombo.SelectedIndexChanged, AddressOf CountryCombo_SelectedIndexChanged End If End Sub Protected Sub CountryCombo_SelectedIndexChanged(ByVal sender As Object, ByVal e As RadComboBoxSelectedIndexChangedEventArgs) If RecipientsGrid.MasterTableView.IsItemInserted <> False Then Dim insertItem As GridEditFormInsertItem = DirectCast(TryCast(sender, DropDownList).NamingContainer, GridEditFormInsertItem) Dim ddlList As DropDownList = DirectCast(insertItem.FindControl("Dropdownlist2"), DropDownList) Else Dim CountryCombo As RadComboBox = DirectCast(sender, RadComboBox) Dim editedItem As GridEditableItem = DirectCast(TryCast(sender, RadComboBox).NamingContainer, GridEditableItem) Dim ProvinceCombo As RadComboBox = DirectCast(editedItem.FindControl("ProvinceCombo"), RadComboBox) Using context As New DataEntities With ProvinceCombo .DataValueField = "ProvinceId" .DataTextField = "NameEnglish" .DataSource = context.Provinces.Where(Function(x) x.CountryId = e.Value).OrderBy(Function(x) x.NameEnglish).ToList End With ProvinceCombo.Width = Unit.Pixel(320) ProvinceCombo.DataBind() End Using End If End Sub<%--<telerik:GridButtonColumn ButtonType="LinkButton" Text="<img src='../App_Themes/default/images/genDoc.gif' border='0' title='Generate Document'/>" UniqueName="GD" CommandName="G"></telerik:GridButtonColumn>--%><telerik:GridTemplateColumn HeaderText="" UniqueName="Image"><ItemTemplate>
<asp:ImageButton ID="GD" runat="server" ImageUrl="~/App_Themes/Default/images/genDoc.gif" CommandName="1" OnClick="ImageButton1_Click">
</asp:ImageButton>
</ItemTemplate><br></telerik:GridTemplateColumn>