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

[Solved] how to bind a template control from the selected index event of another template control

1 Answer 161 Views
Grid
This is a migrated thread and some comments may be shown as answers.
feroz minnadad
Top achievements
Rank 1
feroz minnadad asked on 10 Mar 2010, 01:40 PM

Hi,

I m using radgrid for my application. I m unable to bind or assign a value to a template control from another template controls selected index event while inserting a record(ie.. in insert template).

Please find the screen shot to get clear understand.

aspx page
<telerik:RadGrid   ID="RadGrid1" runat="server" Width="2500px" Height="400" Visible="true"   
                                    AllowAutomaticInserts="true"   
                                    AllowAutomaticUpdates="true"   
                                    AllowAutomaticDeletes="true" 
                                    PageSize="20" AllowPaging="True" AllowFilteringByColumn="True" 
                                    AllowSorting="true" ShowStatusBar="true" GridLines="None"   
                                    AutoGenerateColumns="False"   
                                    Skin="Vista"   
                                    OnNeedDataSource="RadGrid1_NeedDataSource" 
                                    OnDetailTableDataBind="RadGrid1_DetailTableDataBind"     
                                    OnInsertCommand="rd_InsertCommand"   
                                    OnItemInserted="RadGrid1_ItemInserted" 
                                    OnItemDataBound="RadGrid1_ItemDataBound"                                                                                                                                
                                   > 
                <MasterTableView    EditMode="PopUp"  CommandItemDisplay="Top"   
                                    AutoGenerateColumns="false" AllowFilteringByColumn="True"   
                                    AllowSorting="true"   >                                                             
                          
                        <ExpandCollapseColumn> 
                            <HeaderStyle Width="20px"></HeaderStyle> 
                        </ExpandCollapseColumn> 
                        <RowIndicatorColumn> 
                            <HeaderStyle Width="20px" /> 
                        </RowIndicatorColumn> 
                        <ExpandCollapseColumn> 
                            <HeaderStyle Width="20px" /> 
                        </ExpandCollapseColumn> 
                        <Columns>                
                <telerik:GridTemplateColumn    DataField="Slno"             HeaderText="Slno"                  UniqueName="Slno"           HeaderStyle-Width="40" Visible="false" />                                  
                <telerik:GridTemplateColumn    DataField="Programme"        HeaderText="Programe Name"         UniqueName="Programme"      HeaderStyle-Width="40">  
                <EditItemTemplate> 
                <asp:DropDownList ID="Programme"  AutoPostBack="true" runat="server" Width="150"/>  
                </EditItemTemplate> 
                </telerik:GridTemplateColumn>                  
                <telerik:GridTemplateColumn    DataField="InventoryType"    HeaderText="Inventory Type"   UniqueName="InventoryType" HeaderStyle-Width="40" Visible="false"/>  
                <telerik:GridTemplateColumn    DataField="StartTime"        HeaderText="Start Time"       UniqueName="StartTime" HeaderStyle-Width="40" > 
                <EditItemTemplate> 
                <asp:TextBox ID="StartTime" runat="server" Width="150" ReadOnly="true" /> 
                </EditItemTemplate> 
                </telerik:GridTemplateColumn>                  
                <telerik:GridTemplateColumn    DataField="Endtime"        HeaderText="End time"       UniqueName="Endtime" HeaderStyle-Width="40" > 
                <EditItemTemplate>   
                <asp:TextBox ID="Endtime" runat="server" Width="150" ReadOnly="true"/>  
                </EditItemTemplate> 
                </telerik:GridTemplateColumn> 
                <telerik:GridTemplateColumn    DataField="PrimeTime"        HeaderText="Prime Time"       UniqueName="PrimeTime" HeaderStyle-Width="40" > 
                <EditItemTemplate> 
                <asp:TextBox ID="PrimeTime" runat="server" Width="150" ReadOnly="true"/>  
                </EditItemTemplate> 
                </telerik:GridTemplateColumn> 
                <telerik:GridTemplateColumn    DataField="Year"        HeaderText="Year"         UniqueName="Year"      HeaderStyle-Width="40">  
                <EditItemTemplate> 
                <telerik:RadComboBox ID="Year"  AutoPostBack="true" runat="server" Width="150"  OnSelectedIndexChanged="Year_SelectedIndexChanged"/>  
                </EditItemTemplate> 
                </telerik:GridTemplateColumn>    
                <telerik:GridTemplateColumn    DataField="Month"        HeaderText="Month"         UniqueName="Month"      HeaderStyle-Width="40">  
                <EditItemTemplate> 
                <telerik:RadComboBox ID="Month"  AutoPostBack="true" runat="server" Width="150"/>  
                </EditItemTemplate> 
                </telerik:GridTemplateColumn>    
                <telerik:GridDropDownColumn    DataField="Commercial"       HeaderText="Commercial"       UniqueName="Commercial" HeaderStyle-Width="40"/>                  
                <telerik:GridTemplateColumn    DataField="Duration"        HeaderText="Duration"       UniqueName="Duration" HeaderStyle-Width="40" > 
                <EditItemTemplate>   
                <asp:TextBox ID="Duration" runat="server" Width="150" Text="123"/>  
                </EditItemTemplate> 
                </telerik:GridTemplateColumn> 
                <telerik:GridTemplateColumn    DataField="TapeId"        HeaderText="Tape Id"       UniqueName="TapeId" HeaderStyle-Width="40" > 
                <EditItemTemplate>   
                <asp:TextBox ID="TapeId" runat="server" Width="150" ReadOnly="true"/>  
                </EditItemTemplate> 
                </telerik:GridTemplateColumn> 
                <telerik:GridTemplateColumn    DataField="Inventory_Type"   HeaderText="Commercial Type"  UniqueName="Inventory_Type" HeaderStyle-Width="40" Visible="false" />                  
                <telerik:GridTemplateColumn    DataField="TapeStatus"       HeaderText="TapeStatus"       UniqueName="TapeStatus" HeaderStyle-Width="40" Visible="false"/>                  
                <telerik:GridTemplateColumn    DataField="insertion"        HeaderText="Insertion"        UniqueName="insertion" HeaderStyle-Width="40" Visible="false"/>  
                <telerik:GridBoundColumn       DataField="Day1"              HeaderText="Day 1"            UniqueName="Day1"               HeaderStyle-Width="40"/>  
                <telerik:GridBoundColumn       DataField="Day2"              HeaderText="Day 2"            UniqueName="Day2"               HeaderStyle-Width="40"/>  
                <telerik:GridBoundColumn       DataField="Day3"              HeaderText="Day 3"            UniqueName="Day3"               HeaderStyle-Width="40"/>  
                <telerik:GridBoundColumn       DataField="Day4"              HeaderText="Day 4"            UniqueName="Day4"               HeaderStyle-Width="40"/>  
                <telerik:GridBoundColumn       DataField="Day5"              HeaderText="Day 5"            UniqueName="Day5"               HeaderStyle-Width="40"/>  
                <telerik:GridBoundColumn       DataField="Day6"              HeaderText="Day 6"            UniqueName="Day6"               HeaderStyle-Width="40"/>  
                <telerik:GridBoundColumn       DataField="Day7"              HeaderText="Day 7"            UniqueName="Day7"               HeaderStyle-Width="40"/>  
                <telerik:GridBoundColumn       DataField="Day8"              HeaderText="Day 8"            UniqueName="Day8"               HeaderStyle-Width="40"/>  
                <telerik:GridBoundColumn       DataField="Day9"              HeaderText="Day 9"            UniqueName="Day9"               HeaderStyle-Width="40"/>  
                <telerik:GridBoundColumn       DataField="Day10"             HeaderText="Day 10"            UniqueName="Day10"             HeaderStyle-Width="40"/>  
                <telerik:GridBoundColumn       DataField="Day11"             HeaderText="Day 11"            UniqueName="Day11"             HeaderStyle-Width="40"/>  
                <telerik:GridBoundColumn       DataField="Day12"             HeaderText="Day 12"            UniqueName="Day12"             HeaderStyle-Width="40"/>  
                <telerik:GridBoundColumn       DataField="Day13"             HeaderText="Day 13"            UniqueName="Day13"             HeaderStyle-Width="40"/>  
                <telerik:GridBoundColumn       DataField="Day14"             HeaderText="Day 14"            UniqueName="Day14"             HeaderStyle-Width="40"/>  
                <telerik:GridBoundColumn       DataField="Day15"             HeaderText="Day 15"            UniqueName="Day15"             HeaderStyle-Width="40"/>  
                <telerik:GridBoundColumn       DataField="Day16"             HeaderText="Day 16"            UniqueName="Day16"             HeaderStyle-Width="40"/>  
                <telerik:GridBoundColumn       DataField="Day17"             HeaderText="Day 17"            UniqueName="Day17"             HeaderStyle-Width="40"/>  
                <telerik:GridBoundColumn       DataField="Day18"             HeaderText="Day 18"            UniqueName="Day18"             HeaderStyle-Width="40"/>  
                <telerik:GridBoundColumn       DataField="Day19"             HeaderText="Day 19"            UniqueName="Day19"             HeaderStyle-Width="40"/>  
                <telerik:GridBoundColumn       DataField="Day20"             HeaderText="Day 20"            UniqueName="Day20"             HeaderStyle-Width="40"/>  
                <telerik:GridBoundColumn       DataField="Day21"             HeaderText="Day 21"            UniqueName="Day21"             HeaderStyle-Width="40"/>  
                <telerik:GridBoundColumn       DataField="Day22"             HeaderText="Day 22"            UniqueName="Day22"             HeaderStyle-Width="40"/>  
                <telerik:GridBoundColumn       DataField="Day23"             HeaderText="Day 23"            UniqueName="Day23"             HeaderStyle-Width="40"/>  
                <telerik:GridBoundColumn       DataField="Day24"             HeaderText="Day 24"            UniqueName="Day24"             HeaderStyle-Width="40"/>  
                <telerik:GridBoundColumn       DataField="Day25"             HeaderText="Day 25"            UniqueName="Day25"             HeaderStyle-Width="40"/>  
                <telerik:GridBoundColumn       DataField="Day26"             HeaderText="Day 26"            UniqueName="Day26"             HeaderStyle-Width="40"/>  
                <telerik:GridBoundColumn       DataField="Day27"             HeaderText="Day 27"            UniqueName="Day27"             HeaderStyle-Width="40"/>  
                <telerik:GridBoundColumn       DataField="Day28"             HeaderText="Day 28"            UniqueName="Day28"             HeaderStyle-Width="40"/>  
                <telerik:GridBoundColumn       DataField="Day29"             HeaderText="Day 29"            UniqueName="Day29"             HeaderStyle-Width="40"/>                  
                <telerik:GridBoundColumn       DataField="Day30"             HeaderText="Day 30"            UniqueName="Day30"             HeaderStyle-Width="40"/>  
                <telerik:GridBoundColumn       DataField="Day31"             HeaderText="Day 31"            UniqueName="Day31"             HeaderStyle-Width="40"/>  
                <telerik:GridTemplateColumn    DataField="TotalSpots"        HeaderText="Total Spots"       UniqueName="TotalSpots" HeaderStyle-Width="40" > 
                <EditItemTemplate>   
                <asp:TextBox ID="TotalSpots" runat="server" Width="150" ReadOnly="true"/>  
                </EditItemTemplate> 
                </telerik:GridTemplateColumn> 
                <telerik:GridTemplateColumn    DataField="Discount"          HeaderText="Discount"          UniqueName="Discount"          HeaderStyle-Width="40" Visible="false"/>  
                <telerik:GridTemplateColumn    DataField="Contract_Rate"     HeaderText="Contract Rate"     UniqueName="Contract Rate"     HeaderStyle-Width="40" Visible="false"/>  
                <telerik:GridTemplateColumn    DataField="Non_prime_rate"    HeaderText="Non prime rate"    UniqueName="Non_prime_rate"    HeaderStyle-Width="40" Visible="false"/>  
                <telerik:GridTemplateColumn    DataField="Contract_New_Rate"        HeaderText="Contract New Rate"       UniqueName="Contract_New_Rate" HeaderStyle-Width="40" > 
                <EditItemTemplate>   
                <asp:TextBox ID="Contract_New_Rate" runat="server" Width="150" ReadOnly="true"/>  
                </EditItemTemplate> 
                </telerik:GridTemplateColumn> 
                <telerik:GridTemplateColumn    DataField="Rate"        HeaderText="Rate"       UniqueName="Rate" HeaderStyle-Width="40" > 
                <EditItemTemplate>   
                <asp:TextBox ID="Rate" runat="server" Width="150" ReadOnly="true"/>  
                </EditItemTemplate> 
                </telerik:GridTemplateColumn> 
                  
                  
                <telerik:GridEditCommandColumn ButtonType="ImageButton" Display="true" HeaderText="Edit" HeaderStyle-Width="40px"></telerik:GridEditCommandColumn> 
                  
           </Columns> 
             
        </MasterTableView> 
                     <PagerStyle Position="Bottom" AlwaysVisible="true" Mode="NextPrevAndNumeric"></PagerStyle> 
                    <ClientSettings EnableRowHoverStyle="true">  
                        <Selecting AllowRowSelect="True" /> 
                        <Scrolling AllowScroll="true" UseStaticHeaders="true" /> 
                    </ClientSettings> 
    </telerik:RadGrid> 


Codebehind
protected void Year_SelectedIndexChanged(object sender, EventArgs e)  
        {  
            GridItemEventArgs e1 = (GridItemEventArgs)Session["gridevent_ItemDataBound"];  
            tempds = new DataSet();  
            tempds = (DataSet)Session["sesDropDownDs"];  
            Dv.Table = tempds.Tables[1];  
              
            string ElementID = Convert.ToString((sender as RadComboBox).SelectedValue);  
            Dv.RowFilter = "Year='" + ElementID + "'";  
 
            GridEditableItem editedItem = e1.Item as GridEditableItem;  
            GridEditManager editMan = editedItem.EditManager;  
            RadComboBox drp = (RadComboBox)e1.Item.FindControl("Month");  
 
 
            drp.DataTextField  = "Month";  
            drp.DataValueField = "short_month";  
            drp.DataSource = Dv;  
            drp.DataBind();  
 
            TextBox txt = (TextBox)e1.Item.FindControl("Duration");  
            string h = txt.Text;  
            txt.Text = "ghj";                          
        }  
 


thanks in advance.

Regards
Feroz.

1 Answer, 1 is accepted

Sort by
0
Princy
Top achievements
Rank 2
answered on 11 Mar 2010, 07:45 AM
Hi,

Try  accessing the NamingContainer of the dropdownlist in its SelectedIndexChanged event and then try to access the other controls using this.
C#
 protected void ddlActive_SelectedIndexChanged(object sender, System.EventArgs e) 
    { 
        GridEditableItem editedItem = (GridEditableItem)(sender as DropDownList).NamingContainer; 
        DropDownList ddlMonth=(DropDownList)editedItem["ColumnUniqueName"].FindControl("ddlMonth"); 
    } 


Thanks,
Princy
Tags
Grid
Asked by
feroz minnadad
Top achievements
Rank 1
Answers by
Princy
Top achievements
Rank 2
Share this question
or