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

[Solved] How to get a Handle to a Control Inside a Formtemplate of a RadGrid

2 Answers 80 Views
Grid
This is a migrated thread and some comments may be shown as answers.
Suresh Mishra
Top achievements
Rank 1
Suresh Mishra asked on 31 Aug 2009, 05:43 PM
Hi,

I am trying to access a dropdown call "DropdownlistOuter" so I can attach a data source to it AFTER a row is put in edit mode. 
How do I get a handle to this control at run time when the Edit link is pressed.

Thanks!

Suresh

Here is the relevant aspx script.

 

<telerik:RadGrid ID="RadGridEmpData" runat="server" Width="800px" AllowPaging="True" AutoGenerateColumns="False" GridLines="None" Height="200px" PageSize="2" ShowGroupPanel="True" >

 

 

<ClientSettings AllowDragToGroup="True">

 

 

<Scrolling FrozenColumnsCount="4"/>

 

 

</ClientSettings>

 

 

<MasterTableView>

 

 

<columns>

 

 

<telerik:GridEditCommandColumn></telerik:GridEditCommandColumn>

 

 

<telerik:GridImageColumn ImageUrl="IMAGES/add_icon.gif" ImageHeight="" ImageWidth="" UniqueName="column" ></telerik:GridImageColumn>

 

 

<telerik:GridBoundColumn

 

 

DataField="EmployeeNo"

 

 

DataType="System.DateTime"

 

 

HeaderText="Employee No"

 

 

SortExpression="EmployeeNo"

 

 

UniqueName="EmployeeNo">

 

 

<ItemStyle Width="120px" />

 

 

</telerik:GridBoundColumn>

 

 

<telerik:GridTemplateColumn SortExpression="EmployeeNo" DataField="EmployeeNo" HeaderText="EmployeeNo" UniqueName="TemplateColumn">

 

 

<ItemTemplate>

 

 

<asp:LinkButton ID="LinkButtonEmployeeNo" runat="server" Text='<%#Eval("EmployeeNo")%>'></asp:LinkButton>

 

<%

--<asp:LinkButton ID="LinkButton1" runat="server"><%#Eval("EmployeeNo")%></asp:LinkButton>--%>

 

 

</ItemTemplate>

 

 

</telerik:GridTemplateColumn>

 

 

<telerik:GridTemplateColumn SortExpression="Site" DataField="Site" HeaderText="Site" UniqueName="Site">

 

 

<ItemTemplate>

 

 

&nbsp;<asp:DropDownList ID="DropDownList1" runat="server">

 

 

</asp:DropDownList>

 

 

</ItemTemplate>

 

 

</telerik:GridTemplateColumn>

 

 

<telerik:GridTemplateColumn SortExpression="EmployeeName" DataField="EmployeeName" HeaderText="EmployeeName" UniqueName="EmployeeName">

 

 

<ItemTemplate>

 

 

&nbsp;<asp:textbox ID="TextBoxEmployeeName" runat="server">

 

 

</asp:textbox>

 

 

</ItemTemplate>

 

 

</telerik:GridTemplateColumn>

 

 

<telerik:GridBoundColumn DataField="EmployeeNo" DataType="System.Int64" HeaderText="Employee No" SortExpression="EmployeeNo" UniqueName="EmployeeNo"><ItemStyle Width="120px" /></telerik:GridBoundColumn>

 

 

<telerik:GridBoundColumn DataField="ProposalVersionId" HeaderText="ProposalVersionId" SortExpression="ProposalVersionId" UniqueName="ProposalVersionId"><ItemStyle Width="120px" /></telerik:GridBoundColumn>

 

 

<telerik:GridBoundColumn DataField="OriginalCC" HeaderText="OriginalCC" SortExpression="OriginalCC" UniqueName="OriginalCC"><ItemStyle Width="120px" /></telerik:GridBoundColumn>

 

 

<telerik:GridBoundColumn DataField="LevelDesc" HeaderText="LevelDesc" SortExpression="LevelDesc" UniqueName="LevelDesc"><ItemStyle Width="120px" /></telerik:GridBoundColumn>

 

 

<telerik:GridBoundColumn DataField="AnnualSalary" DataType="System.Decimal" HeaderText="AnnualSalary" SortExpression="AnnualSalary" UniqueName="AnnualSalary"><ItemStyle Width="120px" /></telerik:GridBoundColumn>

 

 

<telerik:GridBoundColumn DataField="AssessmentDate" DataType="System.DateTime" HeaderText="AssessmentDate" SortExpression="AssessmentDate" UniqueName="AssessmentDate"><ItemStyle Width="120px" /></telerik:GridBoundColumn>

 

 

<telerik:GridBoundColumn DataField="CostRate" DataType="System.Decimal" HeaderText="CostRate" SortExpression="CostRate" UniqueName="CostRate"><ItemStyle Width="120px" /></telerik:GridBoundColumn>

 

 

<telerik:GridBoundColumn DataField="BurdenRate" DataType="System.Decimal" HeaderText="BurdenRate" SortExpression="BurdenRate" UniqueName="BurdenRate"><ItemStyle Width="120px" /></telerik:GridBoundColumn>

 

 

<telerik:GridBoundColumn DataField="LaborSchedule" HeaderText="LaborSchedule" SortExpression="LaborSchedule" UniqueName="LaborSchedule"><ItemStyle Width="120px" /></telerik:GridBoundColumn>

 

 

<telerik:GridBoundColumn DataField="LaborCategoryCode" HeaderText="LaborCategoryCode" SortExpression="LaborCategoryCode" UniqueName="LaborCategoryCode"><ItemStyle Width="120px" /></telerik:GridBoundColumn>

 

 

<telerik:GridBoundColumn DataField="ChangedUserId" HeaderText="ChangedUserId" SortExpression="ChangedUserId" UniqueName="ChangedUserId"><ItemStyle Width="120px" /></telerik:GridBoundColumn>

 

 

<telerik:GridBoundColumn DataField="EnteredBy" HeaderText="EnteredBy" SortExpression="EnteredBy" UniqueName="EnteredBy"><ItemStyle Width="120px" /></telerik:GridBoundColumn>

 

 

<telerik:GridBoundColumn DataField="Notes" HeaderText="Notes" SortExpression="Notes" UniqueName="Notes"><ItemStyle Width="120px" /></telerik:GridBoundColumn>

 

 

<telerik:GridBoundColumn DataField="Education" HeaderText="Education" SortExpression="Education" UniqueName="Education"><ItemStyle Width="120px" /></telerik:GridBoundColumn>

 

 

<telerik:GridBoundColumn DataField="Experience" HeaderText="Experience" SortExpression="Experience" UniqueName="Experience"><ItemStyle Width="120px" /></telerik:GridBoundColumn>

 

 

</columns>

 

 

<EditFormSettings EditFormType="Template" >

 

 

<FormTemplate >

 

 

<table id="Table2" cellspacing="2" cellpadding="1" width="100%" border="1" rules="none"

 

 

style="border-collapse: collapse; background: white;">

 

 

<tr class="EditFormHeader">

 

 

<td colspan="2" style="font-size: small">

 

 

<b>Employee Details</b></td>

 

 

</tr>

 

 

<tr>

 

 

<td colspan="2">

 

 

<b>Company Info:</b></td>

 

 

</tr>

 

 

<tr>

 

 

<td>

 

 

<table id="Table6" cellspacing="1" cellpadding="1" width="250" border="0" class="module">

 

 

<tr>

 

 

<td>

 

 

</td>

 

 

<td>

 

 

</td>

 

 

</tr>

 

 

<tr>

 

 

<td>

 

Country:

</td>

 

 

<td>

 

 

<asp:TextBox ID="TextBox7" runat="server" Text='<%# Bind( "EmployeeNo" ) %>'>

 

 

</asp:TextBox></td>

 

 

</tr>

 

 

<tr>

 

 

<td>

 

City:

</td>

 

 

<td>

 

 

<asp:TextBox ID="TextBox8" runat="server" Text='<%# Bind( "EmployeeNo") %>' TabIndex="1">

 

 

</asp:TextBox></td>

 

 

</tr>

 

 

<tr>

 

 

<td>

 

Region:

</td>

 

 

<td>

 

 

<asp:TextBox ID="TextBox9" runat="server" Text='<%# Bind( "EmployeeNo") %>' TabIndex="2">

 

 

</asp:TextBox></td>

 

 

</tr>

 

 

<tr>

 

 

<td>

 

Home Phone:

</td>

 

 

<td>

 

 

<asp:TextBox ID="TextBox10" runat="server" Text='<%# Bind( "EmployeeNo") %>' TabIndex="3">

 

 

</asp:TextBox></td>

 

 

</tr>

 

 

<tr>

 

 

<td>

 

Birth Date:

</td>

 

 

<td>

 

 

<asp:TextBox ID="TextBox11" runat="server" Text='<%# Bind( "EmployeeNo") %>' TabIndex="4">

 

 

</asp:TextBox></td>

 

 

</tr>

 

 

<tr>

 

 

<td>

 

Title Of Courtesy

</td>

 

 

<td>

 

<%

-- <asp:DropDownList ID="DDLTOC" runat="server" SelectedValue='<%# Bind("EmployeeNo") %>'

 

DataSource='<%# (New string() { "Dr.", "Mr.", "Mrs.", "Ms." }) %>' TabIndex="7"

AppendDataBoundItems="True">

<asp:ListItem Selected="True" Text="Select" Value=""></asp:ListItem>

</asp:DropDownList>--

 

%></td>

 

 

</tr>

 

 

</table>

 

 

</td>

 

 

<td>

 

 

<table id="Table7" cellspacing="1" cellpadding="1" width="250" border="0" class="module">

 

 

<tr>

 

 

<td>

 

Notes:

 

</td>

 

 

</tr>

 

 

<tr>

 

 

<td>

 

 

<asp:TextBox ID="TextBox1" Text='<%# Bind( "EmployeeNo") %>' runat="server" TextMode="MultiLine"

 

 

Rows="5" Columns="40" TabIndex="5">

 

 

</asp:TextBox></td>

 

 

</tr>

 

 

<tr>

 

 

<td>

 

Address:

</td>

 

 

</tr>

 

 

<tr>

 

 

<td>

 

 

<asp:TextBox ID="TextBox6" Text='<%# Bind( "EmployeeNo") %>' runat="server" TextMode="MultiLine"

 

 

Rows="2" Columns="40" TabIndex="6">

 

 

</asp:TextBox></td>

 

 

</tr>

 

 

</table>

 

 

</td>

 

 

</tr>

 

 

<tr>

 

 

<td colspan="2">

 

 

<b>Personal Info:</b></td>

 

 

</tr>

 

 

<tr>

 

 

<td>

 

 

<table id="Table8" cellspacing="1" cellpadding="1" width="250" border="0" class="module">

 

 

<tr>

 

 

<td>

 

FirstName:

</td>

 

 

<td>

 

 

<asp:TextBox ID="TextBox2" Text='<%# Bind( "EmployeeNo") %>' runat="server" TabIndex="8">

 

 

</asp:TextBox></td>

 

 

</tr>

 

 

<tr>

 

 

<td>

 

Last Name:

</td>

 

 

<td>

 

 

<asp:TextBox ID="TextBox3" Text='<%# Bind( "EmployeeNo") %>' runat="server" TabIndex="9">

 

 

</asp:TextBox></td>

 

 

</tr>

 

 

<tr>

 

 

<td>

 

Hire Date:

</td>

 

 

<td>

 

 

<asp:TextBox ID="Textbox5" Text='<%# Bind( "EmployeeNo") %>' runat="server" TabIndex="10">

 

 

</asp:TextBox></td>

 

 

</tr>

 

 

<tr>

 

 

<td>

 

Title:

</td>

 

 

<td>

 

 

<asp:TextBox ID="TextBox4" Text='<%# Bind( "EmployeeNo") %>' runat="server" TabIndex="11">

 

 

</asp:TextBox></td>

 

 

<td>

 

 

<asp:DropDownList Enabled="true" ID="DropDownListOuter" runat="server">

 

 

</asp:DropDownList>

 

 

</td>

 

 

</tr>

 

 

</table>

 

 

</td>

 

 

<td>

 

 

</td>

 

 

</tr>

 

 

<tr>

 

 

<td align="right" colspan="2">

 

 

<asp:Button ID="btnUpdate" Text='<%# IIf((TypeOf(Container) is GridEditFormInsertItem), "Insert", "Update") %>'

 

 

runat="server" CommandName='<%# IIf((TypeOf(Container) is GridEditFormInsertItem), "PerformInsert", "Update")%>'>

 

 

</asp:Button>&nbsp;

 

<

 

asp:Button ID="btnCancel" Text="Cancel" runat="server" CausesValidation="False"

 

CommandName

 

="Cancel"></asp:Button></td>

 

 

</tr>

 

 

</table>

 

 

</FormTemplate>

 

 

</EditFormSettings>

 

 

 

</MasterTableView>

 

 

</telerik:RadGrid>

 

2 Answers, 1 is accepted

Sort by
0
Princy
Top achievements
Rank 2
answered on 01 Sep 2009, 04:33 AM
Hi,

Try the following code snippet to achieve the desired scenario.

CS:
 
 protected void RadGridEmpData_ItemDataBound(object sender, GridItemEventArgs e) 
    { 
        if ((e.Item is GridEditableItem) && (e.Item.IsInEditMode)) 
        { 
            GridEditableItem editItem = (GridEditableItem)e.Item; 
            DropDownList ddl = (DropDownList)editItem.FindControl("DropdownlistOuter"); 
            // populate the DropdDown here 
            //ddl.DataSourceID = "SqlDataSource1"; 
            //.... 
        } 
     
     } 


Thanks
Princy
0
Suresh Mishra
Top achievements
Rank 1
answered on 01 Sep 2009, 08:17 PM
Thanks.
Tags
Grid
Asked by
Suresh Mishra
Top achievements
Rank 1
Answers by
Princy
Top achievements
Rank 2
Suresh Mishra
Top achievements
Rank 1
Share this question
or