Using A WebControl to edit records radgrid hierarchy

3 posts, 1 answers
  1. Perry
    Perry avatar
    62 posts
    Member since:
    Jul 2015

    Posted 21 Jun 2019 Link to this post

    I have a Hierarchy grid with a using a Master TableView and one DetailTable that looks like this

     

    <telerik:RadGrid runat="server" ID="PrintRadGrid" OnDetailTableDataBind="PrintRadGrid_DetailTableDataBind"
                                    AutoGenerateColumns="false" OnPageIndexChanged="PrintRadGrid_PageIndexChanged" OnPageSizeChanged="PrintRadGrid_PageSizeChanged"
                                    GroupPanelPosition="Top" OnUpdateCommand="PrintRadGrid_UpdateCommand" OnInsertCommand="PrintRadGrid_InsertCommand"
                                    AllowPaging="true"  OnNeedDataSource="PrintRadGrid_NeedDataSource">
                                    <GroupingSettings CollapseAllTooltip="Collapse all groups" />
                                    <PagerStyle Mode="NextPrevAndNumeric" />
                                    <MasterTableView CommandItemDisplay="Top" DataKeyNames="CaseId_Fk,LatentsId" HierarchyDefaultExpanded="false" RetainExpandStateOnRebind="true">
                                        <Columns>
                                            <telerik:GridEditCommandColumn ButtonType="ImageButton" UniqueName="PrintsEditCommandColumn"></telerik:GridEditCommandColumn>
                                            <telerik:GridDateTimeColumn DataField="SubmittedDate" HeaderText="Submitted Date" SortExpression="SubmittedDate"
                                                PickerType="DatePicker" EnableTimeIndependentFiltering="true" DataFormatString="{0:MM/dd/yyyy}">
                                            </telerik:GridDateTimeColumn>
                                            <telerik:GridBoundColumn UniqueName="SubmittedBy" HeaderText="Submitted By" DataField="SubmittedBY"></telerik:GridBoundColumn>
                                            <telerik:GridBoundColumn UniqueName="SubmittedByNoneOCSO" HeaderText="Submitted By None Employee" DataField="SubmittedByNoneOcso"></telerik:GridBoundColumn>
                                            <telerik:GridTemplateColumn AllowFiltering="false">
                                                        <ItemTemplate>
                                                            <asp:Button ID="btnDeleteParent" CssClass="btn btn-xs btn-danger" Text="Delete" runat="server" OnClick="btnDeletePrintParent_Click" OnClientClick="confirmAspButton(this); return false;"></asp:Button>
                                                        </ItemTemplate>
                                                    </telerik:GridTemplateColumn>
                                        </Columns>
                                        <DetailTables>
                                            <telerik:GridTableView Name="PrintsLiftedGrid" Width="100%" DataKeyNames="LatentsId_FK"
                                                 CommandItemDisplay="Top" EnableNoRecordsTemplate="true" HierarchyDefaultExpanded="false">
                                                <NoRecordsTemplate>
                                                    <asp:Label ID="Label8" runat="server" CssClass="label" Text="No charges have been added." />
                                                </NoRecordsTemplate>
                                                <Columns>
                                                    <telerik:GridEditCommandColumn ButtonType="ImageButton" UniqueName="EditCommandColumn">
                                                     </telerik:GridEditCommandColumn>
                                                    <telerik:GridDateTimeColumn DataField="LiftedDate" HeaderText="Lifted Date Date" SortExpression="LiftedDate"
                                                        PickerType="DatePicker" EnableTimeIndependentFiltering="true" DataFormatString="{0:MM/dd/yyyy}">
                                                    </telerik:GridDateTimeColumn>
                                                    <telerik:GridBoundColumn UniqueName="ExhibitNum" HeaderText="Exhibit Number" DataField="ExhibitNum"></telerik:GridBoundColumn>
                                                    <telerik:GridBoundColumn UniqueName="LocationLifted" HeaderText="Location Lifted" DataField="LocationLifted"></telerik:GridBoundColumn>
                                                    <telerik:GridTemplateColumn AllowFiltering="false">
                                                        <ItemTemplate>
                                                            <asp:Button ID="btnDeletePrintChild" CssClass="btn btn-xs btn-danger" Text="Delete" runat="server" OnClick="btnDeletePrintChild_Click" OnClientClick="confirmAspButton(this); return false;"></asp:Button>
                                                        </ItemTemplate>
                                                    </telerik:GridTemplateColumn>
                                                 </Columns>
                                                <CommandItemStyle BackColor="#AfAFa4" Font-Bold="true" Height="50px"
                                                    VerticalAlign="Bottom" BorderColor="Black" BorderStyle="Solid" BorderWidth="1px" />
                                                <CommandItemTemplate>
                                                    <div class="boldLabel"> Prints</div>
                                                    <asp:Button runat="server" ID="lbAddPrint" Text="ADD NEW PRINT" CommandName="InitInsert"
                                                        CssClass="rgButtonText" CausesValidation="false" />
                                                </CommandItemTemplate>
                                                <ParentTableRelation>
                                                    <telerik:GridRelationFields DetailKeyField="LatentsId_FK" MasterKeyField="LatentsId" />
                                                </ParentTableRelation>
                                            </telerik:GridTableView>

     

    In the MasterTable View and the the DetailTable I want to use a web control for Inserting and Updating the records.  I have tried adding this code:

    <EditFormSettings UserControlName="SubjectEdit.ascx" EditFormType="WebUserControl" PopUpSettings-Modal="false">
                                                    <EditColumn UniqueName="EditCommandColumn1"></EditColumn>
                                                </EditFormSettings>

     

    Put keep getting this  error :Telerik.Web.UI.GridTableViewCollection must have items of type 'Telerik.Web.UI.GridTableView'. 'EditFormSettings' is of type 'System.Web.UI.HtmlControls.HtmlGenericControl'.

    What is the syntax to use the web control page and where within MasterTableView and DetailTableView do I put it?

  2. Answer
    Attila Antal
    Admin
    Attila Antal avatar
    440 posts

    Posted 26 Jun 2019 Link to this post

    Hi Perry,

    The code snippet you have shared does not contain the entire setup, hence I am unable to identify the issue. Nevertheless I will show you a working example below:

    <telerik:RadGrid ID="RadGrid1" runat="server">
        <MasterTableView EditMode="PopUp">
            <EditFormSettings EditFormType="WebUserControl" UserControlName="program.ascx">
            </EditFormSettings>
            <DetailTables>
                <telerik:GridTableView EditMode="PopUp">
                    <EditFormSettings EditFormType="WebUserControl" UserControlName="program.ascx">
                    </EditFormSettings>
                </telerik:GridTableView>
            </DetailTables>
            <Columns>
            </Columns>
        </MasterTableView>
    </telerik:RadGrid>

    Additionally to the Syntax, I would also suggest double-checking the project and ensure that no Control has the ID of "EditFormSettings" and also there aren't any custom classes with that name. They can conflict and produce the described issue.

    Kind regards,
    Attila Antal
    Progress Telerik
    Get quickly onboarded and successful with your Telerik and/or Kendo UI products with the Virtual Classroom free technical training, available to all active customers. Learn More.
  3. Perry
    Perry avatar
    62 posts
    Member since:
    Jul 2015

    Posted 26 Jun 2019 in reply to Attila Antal Link to this post

    Thank you very much Attila, this was exactly what I needed.
Back to Top