Solved

Convert DropDownList to a Label

Posted on 2004-09-16
13
1,019 Views
Last Modified: 2008-02-01
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.
0
Comment
Question by:ive5005s
  • 7
  • 3
  • 2
  • +1
13 Comments
 

Author Comment

by:ive5005s
ID: 12075183
Oh, I'm coding behind in VB.NET.

Cheers.
0
 
LVL 4

Assisted Solution

by:Kaarthick
Kaarthick earned 30 total points
ID: 12075265
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
 

Author Comment

by:ive5005s
ID: 12075364
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
Master Your Team's Linux and Cloud Stack

Come see why top tech companies like Mailchimp and Media Temple use Linux Academy to build their employee training programs.

 
LVL 4

Expert Comment

by:Kaarthick
ID: 12075519
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
 
LVL 9

Accepted Solution

by:
Thalox earned 50 total points
ID: 12075608
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
 

Author Comment

by:ive5005s
ID: 12075635
OK, how do I check if the datareader contains more than one value?
0
 

Author Comment

by:ive5005s
ID: 12075649
Thank Thalox, I'll try that.
0
 
LVL 4

Expert Comment

by:Kaarthick
ID: 12075652
Good try Thalox, yes you can try that too.
0
 
LVL 33

Expert Comment

by:raterus
ID: 12076365
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
 

Author Comment

by:ive5005s
ID: 12076872
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
 
LVL 33

Assisted Solution

by:raterus
raterus earned 20 total points
ID: 12077577
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
 

Author Comment

by:ive5005s
ID: 12082660
Cheers.
0
 

Author Comment

by:ive5005s
ID: 12088671
Thanks for all the help guys.
0

Featured Post

ScreenConnect 6.0 Free Trial

Discover new time-saving features in one game-changing release, ScreenConnect 6.0, based on partner feedback. New features include a redesigned UI, app configurations and chat acknowledgement to improve customer engagement!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

One of the pain points with developing AJAX, JavaScript, JQuery, and other client-side behaviors is that JavaScript doesn’t allow for cross domain request for pulling content. For example, JavaScript code on www.johnchapman.name could not pull conte…
A quick way to get a menu to work on our website, is using the Menu control and assign it to a web.sitemap using SiteMapDataSource. Example of web.sitemap file: (CODE) Sample code to add to the page menu: (CODE) Running the application, we wi…
This Micro Tutorial will teach you how to censor certain areas of your screen. The example in this video will show a little boy's face being blurred. This will be demonstrated using Adobe Premiere Pro CS6.
Microsoft Active Directory, the widely used IT infrastructure, is known for its high risk of credential theft. The best way to test your Active Directory’s vulnerabilities to pass-the-ticket, pass-the-hash, privilege escalation, and malware attacks …

770 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question