Click here to Skip to main content
15,890,512 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
Hi,
i'm created a radgrid which displays employee details. when i'm trying to insert a new employee, the radgrid edit form opens. in that, i'm using two radcombobox named cmb_company and cmb_commercialActivity and seperate sqldatasource for each.

ASP.NET
<div class="art-layout-cell layout-item-1" style="width: 100%;">
	<div class="art-layout-cell layout-item-4" style="width: 30%;">
		<asp:Label ID="label_SelectCompany" AssociatedControlID="cmb_company" runat="server" Text="Company Name:" />
	</div>
	<div class="art-layout-cell layout-item-4" style="width: 60%;">
		<telerik:RadComboBox  runat="server" ID="cmb_company" Height="250" AppendDataBoundItems="True" CausesValidation="False" CollapseDelay="10" SelectedValue='<%# Bind("CompanyID") %>' 
			DataMember="DefaultView" AutoPostBack="true" ExpandDelay="0" ItemRequestTimeout="0" Width="80%" MarkFirstMatch="True" EmptyMessage="- Select Company -"
			DataSourceID="SqlDataSource_Company" DataTextField="CompanyName" DataValueField="ID"  önSelectedIndexChanged="cmb_company_SelectedIndexChanged" />
		<asp:RequiredFieldValidator ID="CompanyRequired" runat="server" ControlToValidate="cmb_company" ErrorMessage="*" ForeColor="Red" ValidationGroup="CompanyGroup" />
	</div>
</div>  <%-- cmb_company --%>
<div class="art-layout-cell layout-item-1" style="width: 100%;">
	<div class="art-layout-cell layout-item-4" style="width: 30%;">
		<asp:Label ID="label_CommercialActivity" AssociatedControlID="cmb_commercialActivity" runat="server" Text="Commercail Activity:" />
	</div>
	<div class="art-layout-cell layout-item-4" style="width: 60%;">
		<telerik:RadComboBox  runat="server" ID="cmb_commercialActivity" AppendDataBoundItems="True" CausesValidation="False" CollapseDelay="10" DataMember="DefaultView"
			ExpandDelay="0" ItemRequestTimeout="0" Width="80%" MarkFirstMatch="True" EmptyMessage="- Select Commercial Activity -" SelectedValue='<%# Bind("EmployeeCommercialActivityID") %>' 
			DataSourceID="SqlDataSource_CommercialActivity" DataTextField="CommercialActivityEnglishName" DataValueField="ID" />
		<%--<asp:RequiredFieldValidator ID="CommercialActivityRequired" runat="server" ControlToValidate="cmb_commercialActivity" ErrorMessage="*" ForeColor="Red" ValidationGroup="CompanyGroup" />--%>
	</div>
</div>  <%-- cmb_commercialActivity  --%>



and sqldatasource

SQL
<asp:SqlDataSource ID="SqlDataSource_CommercialActivity" runat="server" ConnectionString="<%$ ConnectionStrings:HRSystemDataBaseConnection %>" SelectCommand="SELECT APP_CompaniesCommercialActivities.ID, APP_CommercialActivities.CommercialActivityEnglishName FROM APP_CompaniesCommercialActivities INNER JOIN APP_CommercialActivities ON APP_CompaniesCommercialActivities.CommercialActivityID = APP_CommercialActivities.ID WHERE (APP_CompaniesCommercialActivities.CompanyID = @CompanyID) ORDER BY APP_CommercialActivities.CommercialActivityEnglishName">
	<SelectParameters>
		<asp:SessionParameter Name="CompanyID" SessionField="CompanyID" />
	</SelectParameters>
</asp:SqlDataSource>
								  
<asp:SqlDataSource ID="SqlDataSource_Company" runat="server" ConnectionString="<%$ ConnectionStrings:HRSystemDataBaseConnection %>" 
	SelectCommand="SELECT ID, CompanyName FROM APP_Companies ORDER BY CompanyName" />


and codebehind is

C#
protected void cmb_company_SelectedIndexChanged(object sender, RadComboBoxSelectedIndexChangedEventArgs e)
{
	Session["CompanyID"] = e.Value;
}


when i change the company, the session value is changed, and error is reporting
"Databinding methods such as Eval(), XPath(), and Bind() can only be used in the context of a databound control."
at cmb_commercialActivity.



Regards,
rafsan
Posted

1 solution

Check for selected values of comboBox,
Session["CompanyID"] = cmb_company.SelectedValue
 
Share this answer
 
Comments
Mohammed Rafsanjany Chembra 6-Jan-14 22:52pm    
Thank you for your response
it doesn't work for me. I had given a company id manually also as
Session["CompanyID"] = "42"

and this radcombobox is inside the radgrid form template

RadComboBox _company = (RadComboBox)_EditForm.FindControl("cmb_company");
Session["CompanyID"] = _company.SelectedValue;


it doesn't work for me. When session value changes the sqldatasource is binding the data to radcombobox. when i remove the it works fine
Zahid Khan Kakar 8-Jan-14 0:44am    
You please have look at the Editable Gridview http://www.codeproject.com/Articles/23471/Editable-GridView-in-ASP-NET-2-0# and bind your elements properly. Don't forget to mark as answer when it works for you.

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900