Convert DropDownList to a Label

Hi,

I have a DropDownList that I populate with value from a Database.

The number of values that appear in the DropDownList is variable, and can range from 1 vaule to over 50 values.

When the total number of values in the DropDownList is 1, what I want to do is convert the DropDownList into a Label with the text value of the single value returned from the database.

Make sense?

OK, how do I do this???

Thanks in advance.

Steve.
ive5005sAsked:
Who is Participating?
 
ThaloxCommented:
you could also use dataset.

before binding the dataset to your list, check how many rows it contains

dataset1.Tables(0).Rows.Count > 1

if true, bind the list, else set the value to the label and make it visible

label1.Text = dataset1.Tables(0).Rows(0)("value")

I'm not sure, whether this is corect vb code, but it should be something like this

Thalox
0
 
ive5005sAuthor Commented:
Oh, I'm coding behind in VB.NET.

Cheers.
0
 
KaarthickCommented:
There is no such option to convert a ComboBox to Label, but the trick is to use both Label and Combo.

Place both tools in your page. Hide both combo and Label initially. Use datareader to get the values. If the datareader contains more than one value then diplay it in the Combo and leave the Label as such.

If the condition fails i.e., if there is single row then hide the Combo and display the value in the Label instead.
0
Free Tool: Subnet Calculator

The subnet calculator helps you design networks by taking an IP address and network mask and returning information such as network, broadcast address, and host range.

One of a set of tools we're offering as a way of saying thank you for being a part of the community.

 
ive5005sAuthor Commented:
Thanks Kaarthick, I like that method.

However, I'm binding the DropDownList to a DataSet.

So, how do I check if the DataSet contains more than one value???
0
 
KaarthickCommented:
You should use DataReader and not DataSet because a DataSet extracts whole result adn you cannot perform the mentioned operations. So if you use DataReader then you can loop through values.
Hope you get my point.
0
 
ive5005sAuthor Commented:
OK, how do I check if the datareader contains more than one value?
0
 
ive5005sAuthor Commented:
Thank Thalox, I'll try that.
0
 
KaarthickCommented:
Good try Thalox, yes you can try that too.
0
 
raterusCommented:
If you could see yourself using this over and over I'd make your own control that implements this functionality, then you'd just have to use this whenever you wanted this, but if this is a one time thing, forget it :-)
0
 
ive5005sAuthor Commented:
This is something I'll be using a few times.

However, I'm not that experienced in creating my own controls.

How do I do this?
0
 
raterusCommented:
Well this is something other articles will be much better at than I could explain.

http://www.aspalliance.com/cookbook/downloads/pdfs/0672325241_ch03.pdf

Here is what I'd do, this article will help you explain if you read it over..and over.

I'd create a new control that extends the dropdownlist.  then in the render event, if there was only one item, just output that item using the HtmlTextWriter, otherwise render the control as usual.

--Michael
0
 
ive5005sAuthor Commented:
Cheers.
0
 
ive5005sAuthor Commented:
Thanks for all the help guys.
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.