Solved

How Do I Get the Currently Selected Item Value from a Bound ComboBox?

Posted on 2007-04-05
4
208 Views
Last Modified: 2010-04-15
I am trying to retrieve the value of a selected item in a combo box, and convert it into an integer. The problem is that the combo box in question is bound to a DataTable. the conversion below doesn't work, because cboDept.SelectedItem is of type System.Data.DataView.Row.

How do I get the actual value of the currently selected item?

Convert.ToInt32(cboDept.SelectedItem)
0
Comment
Question by:marmaxx
  • 2
4 Comments
 
LVL 5

Expert Comment

by:Yttribium
ID: 18860143
This is  a quick demo I did, to test your question:
From what I see here, you need to reference your "Row" by column:  Hence maybe
Convert.ToInt32(cboDept["column1"].SelectedItem);
If this doesn't help, perhaps look at my sample code below.

If it's a Row type, (I didn't see a row type, only a row collection in my DataView example, but it would be the same) Have a look, see what you can get from this:
                  System.Data.DataView dv = new System.Data.DataView();
                  dv.Table = new DataTable("Data");
                  dv.Table.Columns.Add("col1");
                  dv.Table.Columns.Add("col2");
                  dv.Table.Columns.Add("col3");
                  dv.Table.Rows.Add(new object[] {1,2,3});
                  int i = 5;
                  int a = i + Convert.ToInt32(dv.Table.Rows[0]["col1"]);
                  MessageBox.Show(a.ToString());

The output should be "6".

Let me know if there are problems
0
 
LVL 5

Accepted Solution

by:
Yttribium earned 500 total points
ID: 18860152
*Typo:

Convert.ToInt32(cboDept.SelectedItem["column1"]); not
     -> Convert.ToInt32(cboDept["column1"].SelectedItem);
Sorry about that.

0
 
LVL 1

Expert Comment

by:rgavrilov
ID: 18860334
1. Can you use 'this.comboBox1.Text' instead?
2. Or you can choose a particular column (the same as shown in the combo box, by looking up DispalyMember) of the selected row:
            DataRowView item = (DataRowView) this.comboBox1.SelectedItem;
            string value = (string) item[this.comboBox1.DisplayMember];

0
 
LVL 11

Expert Comment

by:Mihai Stancescu
ID: 18863087
Try cboDept.SelectedValue. This property returns an object value wich you can convert it to what type you need, or the type that is stored in the datatable or dataset.


Hope this helps!

Regards,
Mishu
0

Featured Post

Top 6 Sources for Identifying Threat Actor TTPs

Understanding your enemy is essential. These six sources will help you identify the most popular threat actor tactics, techniques, and procedures (TTPs).

Join & Write a Comment

Suggested Solutions

Title # Comments Views Activity
Windows phone Development 11 29
How to read XML file attributes... 17 42
creating a flowchart from an algorithm 5 24
c# code 19 61
Extention Methods in C# 3.0 by Ivo Stoykov C# 3.0 offers extension methods. They allow extending existing classes without changing the class's source code or relying on inheritance. These are static methods invoked as instance method. This…
In order to hide the "ugly" records selectors (triangles) in the rowheaders, here are some suggestions. Microsoft doesn't have a direct method/property to do it. You can only hide the rowheader column. First solution, the easy way The first sol…
Internet Business Fax to Email Made Easy - With eFax Corporate (http://www.enterprise.efax.com), you'll receive a dedicated online fax number, which is used the same way as a typical analog fax number. You'll receive secure faxes in your email, fr…
This tutorial demonstrates a quick way of adding group price to multiple Magento products.

747 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

Need Help in Real-Time?

Connect with top rated Experts

12 Experts available now in Live!

Get 1:1 Help Now