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

Dynamically expanding the row of a Grid with a Nested Grid in a RadTab

2 Answers 141 Views
Grid
This is a migrated thread and some comments may be shown as answers.
Siju John
Top achievements
Rank 1
Siju John asked on 22 Dec 2009, 04:58 PM

Hi everyone,

I'm trying to drag a row from Grid1[grdUlcJobs] and drop it to Grid3[GridEng],which is nested in  Grid2[grdEngineers].The problem I'm facing here is that I'm not able to expand the row [dynamically]of grid2 so that grid3  becomes visible once the drop is done,but I'm able to make the row of grid2 selected and we have also been able to make the drop work successfully.This is the code for the grid,I have also attached the extract of the entire code where Iam trying to make this all work.

Could some one please have a look at it and tell me how to implement this?

 

<telerik:RadGrid ID="grdUlcJobs" runat="server" GridLines="None" AllowPaging="True" AllowMultiRowSelection="True" OnNeedDataSource="grdUlcJobs_NeedDataSource" OnColumnCreated="grdUlcJobs_ColumnCreated" OnRowDrop="grdUlcJobs_RowDrop"  EnableEmbeddedSkins="False" Skin="iMS_Skin" AllowFilteringByColumn="True">
                    <ClientSettings AllowRowsDragDrop="True">
                        <Selecting AllowRowSelect="True" />
                    </ClientSettings>
               <MasterTableView DataKeyNames="id">
               </MasterTableView>
                    <FilterMenu EnableEmbeddedSkins="False">
                    </FilterMenu>
                    <HeaderContextMenu EnableEmbeddedSkins="False">
                    </HeaderContextMenu>
                </telerik:RadGrid>

<telerik:RadGrid ID="grdEngineers" runat="server" DataSourceID="dsEngSumm" GridLines="None" OnRowDrop="grdEngineers_RowDrop" AllowSorting="True" OnNeedDataSource="grdEngineers_NeedDataSource" OnDetailTableDataBind="grdEngineers_DetailTableDataBind" AllowPaging="True" Skin="Sunset" AllowFilteringByColumn="True"  OnPreRender="grdEngineers_PreRender" OnItemCommand="grdEngineers_ItemCommand" OnItemCreated="grdEngineers_ItemCreated" >
                <MasterTableView AutoGenerateColumns="False" DataSourceID="dsEngSumm" AllowAutomaticDeletes="True" DataKeyNames="E_ID">
                    <Columns>
                        <telerik:GridBoundColumn DataField="E_ID" HeaderText="E_ID" SortExpression="E_ID"
                            UniqueName="E_ID">
                        </telerik:GridBoundColumn>
                        <telerik:GridBoundColumn DataField="Engineer" HeaderText="Engineer" SortExpression="Engineer"
                            UniqueName="Engineer">
                        </telerik:GridBoundColumn>
                        <telerik:GridBoundColumn DataField="ECW" DataType="System.Int32" HeaderText="ECW"
                            ReadOnly="True" SortExpression="ECW" UniqueName="ECW">
                        </telerik:GridBoundColumn>
                        <telerik:GridBoundColumn DataField="PPM" DataType="System.Int32" HeaderText="PPM"
                            ReadOnly="True" SortExpression="PPM" UniqueName="PPM">
                        </telerik:GridBoundColumn>
                        <telerik:GridBoundColumn DataField="Tot" DataType="System.Int32" HeaderText="Tot"
                            ReadOnly="True" SortExpression="Tot" UniqueName="Tot">
                        </telerik:GridBoundColumn>
                    </Columns>
<%--                    <DetailTables>
                        <telerik:GridTableView runat="server" DataKeyNames="eng" AllowPaging="false">
                        </telerik:GridTableView>
                    </DetailTables>--%>
<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="Sales" PageViewID="PageView1">
                                </telerik:RadTab>
                                <telerik:RadTab runat="server" Text="Contact Information" PageViewID="PageView2">
                                </telerik:RadTab>
                                <telerik:RadTab runat="server" Text="Statistics Chart" PageViewID="PageView3">
                                </telerik:RadTab>
                            </Tabs>
                        </telerik:RadTabStrip>
                        <telerik:RadMultiPage runat="server" ID="Multipage1" SelectedIndex="0" RenderSelectedPageOnly="false">
                            <telerik:RadPageView runat="server" ID="PageView1">
        <asp:Label ID="Label1" Font-Bold="true" Font-Italic="true" Text='<%# Eval("E_ID") %>'
                                    Visible="false" runat="server" /> 
                                                         
<telerik:RadGrid ID="grdUlcJobs" runat="server" GridLines="None" AllowPaging="True" AllowMultiRowSelection="True" OnNeedDataSource="grdUlcJobs_NeedDataSource" OnColumnCreated="grdUlcJobs_ColumnCreated" OnRowDrop="grdUlcJobs_RowDrop"  EnableEmbeddedSkins="False" Skin="iMS_Skin" AllowFilteringByColumn="True">
                    <ClientSettings AllowRowsDragDrop="True">
                        <Selecting AllowRowSelect="True" />
                    </ClientSettings>
               <MasterTableView DataKeyNames="id">
               </MasterTableView>
                    <FilterMenu EnableEmbeddedSkins="False">
                    </FilterMenu>
                    <HeaderContextMenu EnableEmbeddedSkins="False">
                    </HeaderContextMenu>
                </telerik:RadGrid>                           
                               
                                   <telerik:RadGrid ID="GridEng" runat="server" GridLines="None" AllowPaging="True" AllowMultiRowSelection="True" EnableEmbeddedSkins="False" Skin="iMS_Skin" DataSourceID="dsEngSumm1" >
                                        <ClientSettings AllowRowsDragDrop="True">
                                            <Selecting AllowRowSelect="True" />
                                        </ClientSettings>
                                   <MasterTableView >
                                   </MasterTableView>
                                        <FilterMenu EnableEmbeddedSkins="False">
                                        </FilterMenu>
                                        <HeaderContextMenu EnableEmbeddedSkins="False">
                                        </HeaderContextMenu>
                                    </telerik:RadGrid>
 
                               
                             </telerik:RadPageView>
                            <telerik:RadPageView runat="server" ID="PageView2" Width="460px">
                                <div class="contactWrap">
                                 def
                                </div>
                            </telerik:RadPageView>
                            <telerik:RadPageView runat="server" ID="RadPageView3">
                                <div class="contactWrap">
                                 ABCD
                                </div>
            <asp:SqlDataSource ID="dsEngSumm1" runat="server" ConnectionString="<%$ ConnectionStrings:imsConnectionString %>"
                SelectCommand="SELECT [TQ_J_ID], [TQ_J_C_Number], [TQ_J_C_Date_ID], [TQ_DocketNo], [TQ_Position] FROM [T_TaskQueue] WHERE ([TQ_Engineer] = @TQ_Engineer)">
                <SelectParameters>
                    <%--<asp:Parameter Name="TQ_Engineer" Type="String" />--%>
                    <asp:ControlParameter ControlID="Label1" PropertyName="Text" Type="String" Name="TQ_Engineer" />
                </SelectParameters>
            </asp:SqlDataSource>
                               
                            </telerik:RadPageView>
                        </telerik:RadMultiPage>
                    </asp:Panel>
                </NestedViewTemplate>
                    <ExpandCollapseColumn Visible="True">
                    </ExpandCollapseColumn>                   
                </MasterTableView>
                <ClientSettings AllowRowsDragDrop="True" AllowDragToGroup="True">
                    <Selecting AllowRowSelect="True" />
                </ClientSettings>
            </telerik:RadGrid>
            <asp:SqlDataSource ID="dsEngSumm" runat="server" ConnectionString="<%$ ConnectionStrings:imsConnectionString %>"
                SelectCommand="sp_engJobSumm" SelectCommandType="StoredProcedure"></asp:SqlDataSource>


.......the code behind file: code we are trying to make it work......
((GridDataItem)nestedview.ParentItem).Selected = true;

 

((GridDataItem)nestedview.ParentItem).Expanded = true;

((GridDataItem)nestedview.ParentItem).ChildItem.FindControl("InnerContainer").Visible = true;

 

Thanks

2 Answers, 1 is accepted

Sort by
0
Siju John
Top achievements
Rank 1
answered on 23 Dec 2009, 02:08 PM
Sorry I forget to mention that the "nestedview" variable is initialised as follows

 

RadGrid grid = (RadGrid)e.DestinationGrid;

 

GridNestedViewItem

nestedview= (

GridNestedViewItem)grid.NamingContainer;

Thank you,
Siju John

 

0
Nikolay Rusev
Telerik team
answered on 29 Dec 2009, 07:38 AM
Hello Siju,

I am afraid that I do not completely understand your scenario. When you handle drag-n-drop you will have to change the data sources of both RadGrids - the source and destination grid - to actually move data from one grid to another. As shown on the demo bellow:
http://demos.telerik.com/aspnet-ajax/grid/examples/programming/draganddrop/defaultcs.aspx

After changing RadGrids data source and rebind them they will be repopulate and data transfer should be available for the end user.

Regarding RadGrid with NestedViewTemplate you can use the following demo as a prototype for implementation:
http://demos.telerik.com/aspnet-ajax/grid/examples/hierarchy/nestedviewtemplate/defaultcs.aspx


Regards,
Nikolay
the Telerik team

Instantly find answers to your questions on the new Telerik Support Portal.
Watch a video on how to optimize your support resource searches and check out more tips on the blogs.
Tags
Grid
Asked by
Siju John
Top achievements
Rank 1
Answers by
Siju John
Top achievements
Rank 1
Nikolay Rusev
Telerik team
Share this question
or