Forms Data Controls :: 'DropDownList1' Has A SelectedValue Which Is Invalid Because It Does Not Exist In The List Of It?
Jan 24, 2011
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";
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 detailstview and sql datasource I am retrieveing the data so far no problems but afteradding a dropdownlist in edit mode and clicking edit button I get this error"
'DropDownList1' has a SelectedValue which is invalid because it does not exist in the list of items.
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.)
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
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 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 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".
The question has probably been raised many times, but I could not find an answer so far.The error is: ropdownlist has SelectedValue which is invalid because it does not exist in the list of items.However, I have debugged the values and the list has the correct list of values which includes the SelectedValue.
I get the message "The name DropDownList1 does not exist in the current context". Without using a master page, I can get it to work. It's when I bring this code over to a master page is when I get this error. I'm trying to auto populated a drop down list. Here is my code...
I am attempting to load a page to edit previously saved info from a SQL2008R2 database. When a drop down index changes, it is supposed to load the existing data from a table. Most fields work OK, but drop down lists throw the error. The list is bound to a different database and table from the existing data that is to be edited (if that makes sense). So, when the data is called for editing, that comes from tableB. The drop down list is bound to a different data source, tableA. When the initial data entry was done, the item exists in the table, so I fail to see why this error is thrown. There are many dealing with this symptom, and I have tried many proposed solutions with no good result. Here's the code that retrieves the data and throws the error...
Protected Sub DropDownList6_SelectedIndexChanged(sender As Object, e As EventArgs) Handles DropDownList6.SelectedIndexChanged Dim conn As New SqlConnection("Data Source=server;Initial Catalog=database;User ID=user;Password=password") Dim cmd As New SqlCommand Dim reader As SqlDataReader
[Code] ....
The data is bring called from tableB. The error is getting thrown on the product.selectedvalue line..I think I understand the problem, but I am not sure how to resolve it.
I have a dropdown list that has a bind on it and I get this error. Why am I getting this error and what can I do to fix it. here is the code for the dropdown I currently have:
i want to check my collection so i can add a new customer as long as the username does not exist in the collection i do not want 2 customers to be able to have the same username.
i have been trying many different things to try to get this to work but i am not exactly sure what i should be doing I have a aspforum and collection C# class of the list.
here is some things that i have tried
CustomerExists() i also have a collection of List<Customers> //HERE IS MY EXISTS METHOD public static Boolean IfCustomerExists(string login) { List<Customer> theGuy = Collections.Customers; bool exist = false; foreach (Customer customer in theGuy)
I am problem with gridview pager template,i have a dropdownlist in my pagercontrol butdl.selectedindexchange is not getting fired up if i am trying to bind gridview at code behind.But if iam using sqldatasource instead its working fine.
I think this needs to be a sticky since this is not solved anywhere that I have been looking... I have been googling this for a while now and came across the answer by shear luck and a simple typo when I was writing the code...
Problem: I have 2 dropdown lists...
ddllist1 and ddlist2... Both are code-behind populated via a sql DB.
they are cascading lists via the ajax control.
I am trying to dynamically populate them with values from a DB for edit reasons.
When I try to get them populated I kept getting the error...
"dropdownlist has a SelectedValue which is invalid because it does not exist in the list of items"
Solution:
1) get the values from the DB or from where ever...
2) create a sql select to get the values from the ddl db
3) set the ID of the first DDL control to cddcontrol1.SelectedValue = id (this is a number)
4) set the value of the DDL to the string value ddlist2.SelectedValue = value (this is a string)
I have had some issues with processing null values stored in a SQL Server database table that needed to be represented in a DropDownList. Inevitably if the value wasn't there [meaning that any value in the database must match one of the values in the DropDownList otherwise] you would get the following error:
'DropDownList' has a SelectedValue which is invalid because it does not exist in the list of items
My earlier solution to this problem was to not allow null values resulting in making sure that all fields had default values, and that all DropDownList boxes were equipped with and entry called "Select this" or some such nonsense. Of course this value would also be the default value in said field, which even I would have to admit, looked quite stupid. Enter my co-worker and classic ASP guy who insists that null values are OK in a database (I tend to come from the "No Null values allowed camp.") One look at my code, which looked like this:
Protected Sub DropDownList1_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles DropDownList1.SelectedIndexChanged Response.Redirect("memberlogin.aspx?d=" + DropDownList1.SelectedValue.ToString) End Sub
but DropDownList1.SelectedValue.ToString expression returns the TEXT of the selectedItem.