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

Dropdown columns in grid - autopostback

2 Answers 109 Views
Grid
This is a migrated thread and some comments may be shown as answers.
Michael
Top achievements
Rank 1
Michael asked on 25 Feb 2013, 09:43 AM
I have two dropdown columns in a grid, if i change one dropdown i want to be able to change the contents of the other dropdown in the grid depending on the chosen value in dropdown 1. I can get the dropdown to autopost but I am unsure on how to repopulate the second drop down as this is currently being done in the itemdatabound method. Can someone tell me if this is possible?

2 Answers, 1 is accepted

Sort by
0
Shinu
Top achievements
Rank 2
answered on 25 Feb 2013, 11:14 AM
Hi,

You can populate the second DropDownList depending upon the value in the first DropDownList as follows.

ASPX:
<telerik:GridTemplateColumn UniqueName="DropDown1">
    <ItemTemplate>
        <asp:DropDownList ID="DropDownList1" AutoPostBack="true" runat="server" DataSourceID="SqlDataSource1"
            DataTextField="bitField" DataValueField="bitField" OnSelectedIndexChanged="DropDownList1_SelectedIndexChanged">
        </asp:DropDownList>
    </ItemTemplate>
</telerik:GridTemplateColumn>
<telerik:GridTemplateColumn UniqueName="DropDown2">
    <ItemTemplate>
        <asp:DropDownList ID="DropDownList2" runat="server" DataSourceID="SqlDataSource1"
            DataTextField="bitField" DataValueField="bitField">
        </asp:DropDownList>
    </ItemTemplate>
</telerik:GridTemplateColumn>

C#:
protected void DropDownList1_SelectedIndexChanged(object sender, EventArgs e)
{
    DropDownList DropDownList1 = (DropDownList)sender;
    GridDataItem ditem = (GridDataItem)DropDownList1.NamingContainer;
         
    DropDownList DropDownList2 = (DropDownList)ditem.FindControl("DropDownList2");
    DropDownList2.SelectedValue = DropDownList1.SelectedValue;
}

Thanks,
Shinu.
0
Jayesh Goyani
Top achievements
Rank 2
answered on 25 Feb 2013, 11:18 AM
Hello,

Please check below link, i have already implemented same thing with RadComboBox.
http://www.telerik.com/community/forums/aspnet-ajax/grid/cascading-radcomboboxes-inside-radgrid.aspx#2120329

It is also work for below structure.
<telerik:GridTemplateColumn
       UniqueName="Level1Account">
                       <EditItemTemplate>
                           <telerik:RadComboBox ID="Level2RadComboBox" runat="server" AutoPostBack="true" OnSelectedIndexChanged="Level2RadComboBox_SelectedIndexChanged"
                               Width="300px">
                               <Items>
                                   <telerik:RadComboBoxItem Text="1" Value="1" />
                                   <telerik:RadComboBoxItem Text="2" Value="2" />
                                   <telerik:RadComboBoxItem Text="3" Value="3" />
                               </Items>
                           </telerik:RadComboBox>
                          
                       </EditItemTemplate>
                   </telerik:GridTemplateColumn>
 
<telerik:GridTemplateColumn UniqueName="Level1Account3">
                       <EditItemTemplate>
                           
                           <telerik:RadComboBox ID="Level3RadComboBox" runat="server" AutoPostBack="true" OnSelectedIndexChanged="Level3RadComboBox_SelectedIndexChanged"
                               Width="300px">
                               <Items>
                                   <telerik:RadComboBoxItem Text="11" Value="11" />
                                   <telerik:RadComboBoxItem Text="22" Value="22" />
                                   <telerik:RadComboBoxItem Text="33" Value="33" />
                               </Items>
                           </telerik:RadComboBox>
                       </EditItemTemplate>
                   </telerik:GridTemplateColumn>


Thanks,
Jayesh Goyani
Tags
Grid
Asked by
Michael
Top achievements
Rank 1
Answers by
Shinu
Top achievements
Rank 2
Jayesh Goyani
Top achievements
Rank 2
Share this question
or