This is a migrated thread and some comments may be shown as answers.

[Solved] Binding to ObjectDataSouce for Radcombobox in a RadGrid with key from grid

1 Answer 99 Views
Grid
This is a migrated thread and some comments may be shown as answers.
Robin Lilly
Top achievements
Rank 1
Robin Lilly asked on 22 Apr 2009, 01:35 AM

I have a heirachial grid that has several radcomboboxes. In the radcomboboxes I have found it now necessary to pass either a key from that heirachial grid, whereas I hadn't needed to before. I posted needed code

 

<telerik:RadGrid ID="rdgActivities" runat="server"  EnableViewState="true"

    AllowFilteringByColumn="True" Visible="True"
    DataSourceID="objGetLifeCycleActivties"

    Skin="Office2007"   
    GridLines="None">
    <PagerStyle Mode="NextPrevAndNumeric"  />
    <MasterTableView DataSourceID="objGetLifeCycleActivties" 
           DataKeyNames="LifeCycleActivityID,ProjectLifeCyclePhaseID"
           EditMode="EditForms" 
            CommandItemDisplay="Top" 
            CurrentResetPageIndexAction="SetPageIndexToFirst" Dir="LTR"
             TableLayout="Auto" >
             <DetailTables>
            
                    <telerik:GridTableView   DataKeyNames="LifeCycleTaskID" CommandItemDisplay="Top"
                        DataSourceID="objGetLifeCycleTasks" AllowFilteringByColumn="False" Width="100%" runat="server">
                        <ParentTableRelation>
                            <telerik:GridRelationFields DetailKeyField="LifeCycleActivityID" MasterKeyField="LifeCycleActivityID" />
                        </ParentTableRelation>
                        <Columns>
                                                       
                                <telerik:GridBoundColumn DataField="LifeCycleActivityID" Visible="False"
                                 HeaderText="LifeCycleActivityID" SortExpression="LifeCycleActivityID"
                                    UniqueName="LifeCycleActivityID" ReadOnly="True">
                                </telerik:GridBoundColumn>   

 
                               <telerik:GridTemplateColumn UniqueName="TaskID"  Visible="False"
                                         DataField="TaskID" HeaderText="Task">
                                    <ItemTemplate></ItemTemplate>
                                    <EditItemTemplate>
                                    <telerik:RadComboBox ID="rdcTask" runat="server" Height="190px" 
                                        Skin="Office2007"
                                        Width="150px" MarkFirstMatch="true"
                                        HighlightTemplatedItems="true"
                                        ItemRequestTimeout="500"
                                        DataSourceID="objGetTasks" 
                                        SelectedValue='<%# Bind("TaskID")%>'
                                        AllowCustomText="False"
                                        DataTextField="TaskName" DataValueField="TaskID"   >
                                        <HeaderTemplate>
                                            <div style="width:100%; position:inherit; ">
                                                <span style="float:right; width: 100%;">Task</span>
                                            </div>
                                        </HeaderTemplate>
                                        <ItemTemplate>
                                           <div style="position:inherit">
                                                <div style="width:100%;">
                                                    <span style="float:left; width:100%;"><%# DataBinder.Eval(Container.DataItem, "TaskName")%></span>
                                                </div>
                                           </div>   
                                        </ItemTemplate>
                                     </telerik:RadComboBox>

                                    </EditItemTemplate>
                                </telerik:GridTemplateColumn>

The object data source looks like this.

<asp:ObjectDataSource ID="objGetTasks" runat="server" 
    SelectMethod="GetTasksByLifeCycleActivityID" 
    TypeName="Hunt.LandDevelopment.Components.LDDController">
    <SelectParameters>
        <asp:SessionParameter Name="LifeCycleActivityID" SessionField="LifeCycleActivityID" Type="Int32" />
    </SelectParameters>
</asp:ObjectDataSource>

So how can I reference the datakey parameter LifeCycleActivityID within the ObjectDataSource? In the heirchial grids I am able to reference the sessionparameter for that key and bind the sub grid using the sessionparameter in the select parameters of the child grid.

Thank you, Robin

1 Answer, 1 is accepted

Sort by
0
Tsvetoslav
Telerik team
answered on 27 Apr 2009, 08:54 AM
Hi Robin Lilly,

You can access the master table data key by using the ParentItem property of the detail table view.
Please, review the attached sample for comparison with your implementation and let me know if it helps.

Best Regards,
Tsvetoslav
the Telerik team

Instantly find answers to your questions on the new Telerik Support Portal.
Check out the tips for optimizing your support resource searches.
Tags
Grid
Asked by
Robin Lilly
Top achievements
Rank 1
Answers by
Tsvetoslav
Telerik team
Share this question
or