Wednesday, March 21, 2012
populating a dropdown list from arraylist of objects
i have an arraylist which holds my Customer object, that contains the
customer details, but when i try binding it to a dropdown box, i cant get
the values to appear..
this is what i tried:
customerList.DataSource = Customer.GetAdminList()
customerList.DataBind()
customerList.DataTextField = CType(customerList.DataSource,
Customer).Email.ToString
customerList.DataValueField = CType(customerList.DataSource,
Customer).CustomerID.ToString
customerList.Items.Insert(0, "--ALL CUSTOMERS--")
this error returns me a invalid cast error..so i also tried the normal
method:
customerList.DataSource = DotcoCustomer.GetAdminList()
customerList.DataBind()
customerList.DataTextField = "email"
customerList.DataValueField = "customerID"
customerList.Items.Insert(0, "--ALL CUSTOMERS--")
but this populates the dropdown list with the the values
"Web2004.Customer" - which is my application namespace.Object...'
any help appreciated,
Paul.Rearrange the order of your code:
customerList.DataSource = DotcoCustomer.GetAdminList()
customerList.DataTextField = "email"
customerList.DataValueField = "customerID"
customerList.DataBind()
customerList.Items.Insert(0, "--ALL CUSTOMERS--")
"Paul M" <milsnips@.hotmail.com> wrote in message
news:uf9aWLvQEHA.3568@.TK2MSFTNGP10.phx.gbl...
> hi there,
> i have an arraylist which holds my Customer object, that contains the
> customer details, but when i try binding it to a dropdown box, i cant get
> the values to appear..
> this is what i tried:
> customerList.DataSource = Customer.GetAdminList()
> customerList.DataBind()
> customerList.DataTextField = CType(customerList.DataSource,
> Customer).Email.ToString
> customerList.DataValueField = CType(customerList.DataSource,
> Customer).CustomerID.ToString
> customerList.Items.Insert(0, "--ALL CUSTOMERS--")
> this error returns me a invalid cast error..so i also tried the normal
> method:
>
> customerList.DataSource = DotcoCustomer.GetAdminList()
> customerList.DataBind()
> customerList.DataTextField = "email"
> customerList.DataValueField = "customerID"
> customerList.Items.Insert(0, "--ALL CUSTOMERS--")
>
> but this populates the dropdown list with the the values
> "Web2004.Customer" - which is my application namespace.Object...'
> any help appreciated,
> Paul.
>
>
populating a dropdown list from arraylist of objects
i have an arraylist which holds my Customer object, that contains the
customer details, but when i try binding it to a dropdown box, i cant get
the values to appear..
this is what i tried:
customerList.DataSource = Customer.GetAdminList()
customerList.DataBind()
customerList.DataTextField = CType(customerList.DataSource,
Customer).Email.ToString
customerList.DataValueField = CType(customerList.DataSource,
Customer).CustomerID.ToString
customerList.Items.Insert(0, "--ALL CUSTOMERS--")
this error returns me a invalid cast error..so i also tried the normal
method:
customerList.DataSource = DotcoCustomer.GetAdminList()
customerList.DataBind()
customerList.DataTextField = "email"
customerList.DataValueField = "customerID"
customerList.Items.Insert(0, "--ALL CUSTOMERS--")
but this populates the dropdown list with the the values
"Web2004.Customer" - which is my application namespace.Object...??
any help appreciated,
Paul.Rearrange the order of your code:
customerList.DataSource = DotcoCustomer.GetAdminList()
customerList.DataTextField = "email"
customerList.DataValueField = "customerID"
customerList.DataBind()
customerList.Items.Insert(0, "--ALL CUSTOMERS--")
"Paul M" <milsnips@.hotmail.com> wrote in message
news:uf9aWLvQEHA.3568@.TK2MSFTNGP10.phx.gbl...
> hi there,
> i have an arraylist which holds my Customer object, that contains the
> customer details, but when i try binding it to a dropdown box, i cant get
> the values to appear..
> this is what i tried:
> customerList.DataSource = Customer.GetAdminList()
> customerList.DataBind()
> customerList.DataTextField = CType(customerList.DataSource,
> Customer).Email.ToString
> customerList.DataValueField = CType(customerList.DataSource,
> Customer).CustomerID.ToString
> customerList.Items.Insert(0, "--ALL CUSTOMERS--")
> this error returns me a invalid cast error..so i also tried the normal
> method:
>
> customerList.DataSource = DotcoCustomer.GetAdminList()
> customerList.DataBind()
> customerList.DataTextField = "email"
> customerList.DataValueField = "customerID"
> customerList.Items.Insert(0, "--ALL CUSTOMERS--")
>
> but this populates the dropdown list with the the values
> "Web2004.Customer" - which is my application namespace.Object...??
> any help appreciated,
> Paul.
populating a drop-down problem
I then have a user log in to my site and their details are pulled off a database - including their address with state code.
I then set the selected value of the drop down to the users state.
The problem I have is if the sate on the database is empty or incorrect for some reason. When I set the selected value of the drop down list, I get an error because I'm trying to set it to a value that isn't there.
How do I get around this?
I need some sort of way to say - select this value from the dropdown only if the value exists - without giveing the error.
Any ideas?
ThanksmyComboBox.Items.Count will give you the number of items in the combo. If the number is not 0, you can use the SelectedValue, otherwise not.
That's not quite the problem but thanks anyway - what I mean is:
Lets say I have a drop down list with the values of
NY
CY
FL
NJ
and then I use dropdownList1.selectedValue = "DFGDF"
It's not going to find that value right?
What I wanted to know was is it possible to find out before I specify the selected value whether the value is actually in the list or not.
I have found a way round it though using:
Try
dropDownStates.SelectedValue = usrRow.Item("State")
Catch ex As Exception
End Try
At least that way I don't get an error but I was wondering if there's a way of telling what values are in the dropdown before specifying which is selected..
Thanks anyway.
Why not populate the ddl from the database and then you are sure that there is an entry for every possible selected item?
HTH
Well - the list of states is correct in that all the codes are correct and all the states are there. I need to provide all the states in the drop down to allow new users to sign up and for existing users to pick a new state if they move house.
The problem I have is that the data I'm initialy supllied with probably wont be perfect. I have no control over this data either - I just get the data and have to eork with it as it is. So I have to account for some of the users on the datanase not having the correct state code. Some might not have a code at all and others may be 'New York' rather then NY..
I suppose a way round it would be to:
create a dataset from the xml file of states
cerate a dataView from the dataset and see if the users state (NY for eaxmple) was in there.
if it was, I could then set the selected value of the dropdown to that value otherwise I would just leave it.
That just sounds like a long way of doing it though.
Isn't there some property of the dropdown like
dropdownlist.containsvalue ?
That would make it much easier.