Forms Data Controls :: Dropdownlist Selectedvalue Does Not Exist Error?
Mar 2, 2011
I have a drop down list inside a formview control's edititemtemplate and itemtemplate. The dropdown list is not bound to a data source. I am hard-coding the listitems for the drop down list. The formview is bound to a datasource. All I want to do is set the selectedvalue of the dropdown to what is in the record from the database. But I keep getting the error.
<asp:formview .....>
<edititemtemplate>
.... //some other controls like textboxes that are correctly bound and display the value from the datasource
<asp:dropdownlist ID=myddl runat=server cssclass=myclass selectedvalue='<%# eval("mychoice") %>'>
<asp:listitem value='0'>I dont know</asp:listitem>
<asp:listitem value='1'>Yes</asp:listitem>
<asp:listitem value='2'>No</asp:listitem>
</asp:dropdownlist
.....//rest of the edititem controls that display correctly.
</edititemtemplate>
Just for kicks, I added a textbox and set it's value to eval("mychoice") as well and it correctly prints 0,1 or 2. So, I know that there is no illegal value coming back from the datasource. It seems as something with the timing of events - when the listitems are getting bound to the ddl. The error I get is - "myddl has a selectedvalue which is invalid because it does not exist in the list of items".
I have a dropdownlist in DetailsView to which items are added programmatically during DataBound event. It is working fine in InsertItemTemplate, but in EditItemTemplate i am getting this error "'branchDDL' has a SelectedValue which is invalid because it does not exist in the list of items. Parameter name: value".
I have a standard gridview and detailsview. My detailsview has some fields which are templates, with dropdownlists. The user selects a record in the gridview, then can go down to the detailsview, select Edit, and change some values (using dropdownlists).I am getting the error, "DDL has a selectedvalue which is invalid because it does not exist...." when I click Edit in the detailsview.
I know the problem has something to do with the dropdownlists not being instantiated or bound until I enter Edit mode. Is that right? In what event should I databind my dropdownlists? I've tried several things but could not get it to work. Do I have to loop through all the rows of my details view looking for the dropdownlists, or can I access them directly from some event?
I got this error when select a row from a grid view to update
'ddl_ctegOf_Product_update' has a SelectedValue which is invalid because it does not exist in the list of items.Parameter name: value Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code. Exception Details: System.ArgumentOutOfRangeException: 'ddl_ctegOf_Product_update' has a SelectedValue which is invalid because it does not exist in the list of items.Parameter name: value
Source Error: Line 265: txt_prodID_update.Text = gridTo_updateFrom.SelectedRow.Cells[1].Text; Line 266: txt_prod_name_update.Text = gridTo_updateFrom.SelectedRow.Cells[2].Text; Line 267: ddl_ctegOf_Product_update.SelectedValue = gridTo_updateFrom.SelectedRow.Cells[3].Text; Line 268: txt_cateIn_hardCopy_update.Text = gridTo_updateFrom.SelectedRow.Cells[4].Text.Replace(" ", ""); Line 269: txt_prodID_update.ReadOnly = true;
The code of update:
private void PopulateDropDownList() { string constr = ConfigurationManager.ConnectionStrings[1].ConnectionString; using (SqlConnection con = new SqlConnection(constr)) { using (SqlCommand cmd = new SqlCommand("SELECT CategoryProd_ID,Cate_Pro_Name FROM CategoryOfProduct", con)) { using (SqlDataAdapter da = new SqlDataAdapter(cmd))
I have a page with some bound DropDownLists (DDLs) for a Call Logging system. The Calls are categorised on three levels for example:
Call: 3069, Category 1: Incident, Category 2: Microsoft Application, Category 3: Word would be used to organise calls for problems with Microsoft Word. On testing the system, I noticed that there was no handling for opening a call if the category had been deleted - say for reorganisation/systems no longer supported whatever. So I set about trying to make the program behave in the following manner:
Check category ID exists in DDL before bindingIt doesn't: set the displayed text of the DDL to Category Name + "(Deleted)"Disable the control to prevent user changingMove on to next control Seemed simple enough, however no matter which way I try and do it I always get the messase ddl_Cat1 has a SelectedValue which is invalid because it does not exist in the list of items. What's really puzzling me is that the exception doesn't seem to be being thrown in the code behind. I've gone through line by line from Page_Init and it never throws and exception. Just when the page loads this appears.
Does anyone know of a reason as to why this wouldn't work? (I've already tried setting the selected value to an existing item, adding a new list item with the value and setting DataSource property to Nothing - in all different combinations.)
We use gridview for showing a data from table.It show fine in certain case like in table field dispostion is data and test but in table we put the string Ineligible Member/Member No Longer Enrolled - Spoke to Target and Wrong Number After Skip Tracing then it gives error. 'DropDownList1' has a SelectedValue which is invalid because it does not exist in the list of items.
The following is snippest my code ,tell me where i am wrong.
I've got a gridview which displays records from a table in SQL Server. Next I've got a details view which displays the details from the selected record. This works fine.
When the user selects a record, which then gets displayed in the details view, I'd like to make it possible for the user to edit the record. I've done searchs for this online, and found lots of responses, but none quite displaying an answer to the question I've got. I'm sure it is a simple thing I've done wrong, but at this point I don't know what it is I've done wrong. I've getting this error,"'DropDownList1' has a SelectedValue which is invalid because it does not exist in the list of items.Parameter name: value".
I've got a SqlDataSource to display the data in the details view. And then I specified another SqlDataSource to use for the dropdownlist control in the details view. I converted the field, in the details view, to a template field and have been replacing it. Here's the SqlDataSource controls definitions:
In my asp.net page I have a formview. In the formview's InsertItemTemplate I declare a dropdown list as below:
<td> <asp:DropDownList ID="DropDownList6" runat="server" text='<%# Bind("District") %>' DataSourceID="SqlDataSource6" DataTextField="District" DataValueField="District"> </asp:DropDownList> <asp:SqlDataSource ID="SqlDataSource6" runat="server" ConnectionString="<%$ ConnectionStrings:ConnectionString %>" SelectCommand="SELECT [District] FROM [tblDistricts]"></asp:SqlDataSource> </td> and this works perfectly fine. In the EditItemtemplate I declare a similar dropdownlist as below to edit district values: <td> <asp:DropDownList ID="DropDownList6" runat="server" selectedvalue='<%# Bind("District") %>' DataSourceID="SqlDataSource6" DataTextField="District" DataValueField="District"> </asp:DropDownList> <asp:SqlDataSource ID="SqlDataSource6" runat="server" ConnectionString="<%$ ConnectionStrings:ConnectionString %>" SelectCommand="SELECT [District] FROM [tblDistricts]"></asp:SqlDataSource> </td>
But whenever I try to edit the data I get the error:
'DropDownList6' has a SelectedValue which is invalid because it does not exist in the list of items. Parameter name: value And the values I am trying to edit were entered into the table by the dropdownlist declared in the insertitemtemplate dropdownlist6 listed above. And no values were deleted from the table.
How to solver this error? I am getting error for "DropDown"
Error: 'DStation' has a SelectedValue which is invalid because it does not exist in the list of items.Parameter name: value on line: DStation.DataBind();
My .cs code is below
string CommandText = ("select distinct StationName from stations where DeletionDate is null"); DStation.DataSource = DataManager.DatabaseManager.GetOrCreateConnection (DataManager.DatabaseManager.ConnectionType.MySQL).GetData(CommandText); DStation.DataTextField = "StationName";
My page has a gridview, and the gridview has a TemplateField called "Acciones" (Actions). The column Acciones has a ImageButton with CommandName "Select" and CommandArgument "Tutor". Thus, the GridView has controlled event "SelectedIndexChanged". The idea is that in GV_SelectedIndexChanged, I must to set DropDownList's SelectedValue property. But, the value seted in this function don't affect the rendered dropdownlist. The debugger talk's that the value is correctly seted, but the visual result don't.
i want to display selectedvalu on dropdonwlist i have a access table like this;1 Adana2 Ankaraits displaying the numbers of cities but i want to display name of the cities in my gridview how can i fix that ? im using theese codes for register page;
string baglan =DugunSitemiz.Properties.Settings.Default.baglan; OleDbConnection conn = new OleDbConnection(baglan); conn.Open();
I'm populating a dropdownlist in a formview with a different datasource from the formview's. I need to set the selected value according to the value in the formview's datasource but I'm having a hard time doing that.
Here's the code: <asp:FormView ID="FormView1" runat="server" DataKeyNames="ID" DataSourceID="SqlDataSource1"> <EditItemTemplate> [code]....
I'm using a FormView which has odsMain as the datasource. I am also using a dropdownlist which is being populated with objectdatasource odsddl.
I'd like to set the selectedvalue of the dropdownlist with the value contained in odsMain (the current record value for it). Is there any way this can be done?
I have a form that's being databound with a SQLDataAdapter. I have a DropDownList with a SelectedValue='<%# Bind("FieldName")%>' on it. I was wondering if there was a way I could remove this field and set it dynamically in the codebehind and still have it insert the value of this field with the SQLDataAdapter. The reason for this is because the control I'm using doesn't have a separate InsertItemTemplate, only an EditItemTemplate which serves both purposes, and I need this to dropdownlist to only be databound on Insert.
Right now it's looking like I'll have to stop using the SQLDataAdapter and Update/Insert the data in the codebehind, but I wanted to see if there was something I was missing just-in-case.
I am having Gridview ie : inside i have placeholder, So on Gridview_RowDataBound - according the Specific Condition getting from DB then - i am Creating the Dropdownlist dynamically here and assign Datasource. so up to this its ok. My Problem When the user Select any value on the Dropdownlist on Gridview ,
i have one button outside the Gridview so if i click the button i am want to get the dropdownlist selectedValue so on the Button_Click Event
i used foreach row in the Gridview.. but i do no how to get the value. as the Dropdownlist is create dynamically on Gridview_RowDatabound event. but here what i have to write to get the dropdownlist?
Everything was good before I bumped into the problem when declarative binding (SelectedValue='<# Bind("SvcCluster_Id") >') produced the error, because value has not been found in the list. So i moved binding to the code:
protected void frmConfigEdit_DataBound(Object sender, System.EventArgs e) { if (frmConfigEdit.CurrentMode == FormViewMode.Edit) { var svcCluster_id = DataBinder.Eval(frmConfigEdit.DataItem, "SvcCluster_id"); var ddlCluster = (DropDownList)frmConfigEdit.FindControl("ddlCluster"); if (svcCluster_id != null && ddlCluster.Items.FindByValue(svcCluster_id.ToString()) != null) { ddlCluster.SelectedValue = svcCluster_id.ToString(); } } }
But now seems like this happens later than ObjectDataSource tries to access frmConfigEdit$ddlCluster...
How to manage this?
I wouldn't like to move everything to the code (I mean creating Control parameters, etc)
p.s. Oops, actually it works ok for DataBound event! Sorry.
I have a form which has some dropdownlists (ListItems "Yes" "No"). I use my form to Enter data & submit to database and use same form to Edit aswell. Like I redirect to this form from another page with a QueryString. If there is a QueryString then SELECT * FROM Table WHERE ID = QueryString's value & fill all the controls in the form like
[URL]
I have certain things to do when DropDownList.SelectedValue = "Yes" so I can use SelectedIndexChanged event handler & AutoPostBack="true" when submitting form for the first time. Now when I edit the information(Data filled from table as stated above). How can i automatically fire all events like DropDownlist SelectedIndexChanged in the page_Load iteslef so that all the things that are supposed to be done when DropDownList.SelectedValue = "Yes". I'm posting my test code for reference to explain what I'm trying to do. This is just the Idea. I have something else to deal with if i can get this stright. I need to dynamically add controls based on the values of DropDownList. please suggest some thing guys.
I have a WebForms page that has two DropDownList controls on it that both contain a range of temperatures from 60-80 degrees, one for heating the other for cooling. They are declared in the .aspx as:
When I try to set the selected value for each DropDownList using the values in an object containing data loaded from the database using:heating.SelectedValue = myHome.avgHeatingTemp.ToString(); cooling.SelectedValue = myHome.avgCoolingTemp.ToString();
The SelectedValue for both lists is set first to the value in myHome.avgHeatingTemp, then to the value in myHome.avgCoolingTemp. Heres what the values are for each variable after each step of the process of setting the SelectedValues:
Initial State heating.SelectedValue: 60 cooling.SelectedValue: 60 [code]....
I am gettng the above error when I am using the Cascading Dropdown list in a DNN application. Everything works 100% until I try to post the form to the db then the error is thrown.I have attached the relevent code
i try to fetch the data from the database and display text in the dropdownlist
i got the error message
'cmbslot' has a selectedvalue which is invalid because it does not exist in the list of items parameter name value cmbslot.Text = obj.getdata(dr["slotcode"].ToString()); //here is my code to retrive the data from the database