ComboBox数据操作

在取得combBox�目的值时遇到一些问题,现在将问题解决方法发布如下:
测试代码:
1.测试用类,主要用来想combBox中添加数据项
public class Vendor
        {
                
                 private int old;
                 private string name;
                 public string Name
                {
                        get
                        {
                                 return name;
                        }
                        set    
                        {
                                 this.name = value;
                        }
                }
                 public int Old
                {
                        get { return old; }
                        set { old = value; }
                }
                 public Vendor( string na, int ol)
                {
                        name = na;
                        old = ol;
                }
                 public Vendor()
                {}
        }
添加数据的代码:(初始化时....)
            comboBox1.Items.Add(new Vendor("aaa",5));
            comboBox1.Items.Add(new Vendor("dddd", 66));
            comboBox1.DisplayMember = "Old";
            comboBox1.ValueMember = "Name";
其中DisplayMember设置显示的数据,下面那个是对应的值,也就是待会要取出来的值.
以下是显示的代码(将值显示出来)
                        var k = ((Vendor)comboBox1.SelectedItem).Name;
                        MessageBox.Show(k.ToString());
直接selecteditem是一个object的对象,所以需要将它转化成Vendor然后才能取到name值,代码测试通过。。。有兴趣的试试!
2.模拟绑定数据库的
                        comboBox1.DataSource = null;
                        ArrayList lst = new ArrayList();
                        lst.Add( new Vendor( "aaaaaa", 1111111));
                        lst.Add( new Vendor( "aa", 11));
                        lst.Add( new Vendor( "aaaa", 11111));
                        lst.Add( new Vendor( "aaaaa", 11111));
                        comboBox1.Items.Clear();
                        comboBox1.DataSource = lst;
                        comboBox1.DisplayMember = "Name";
                        comboBox1.ValueMember = "Old";
以下是显示的代码:
                                var k = ( int)comboBox1.SelectedValue;    
                                MessageBox.Show(k.ToString());
就这么多,网上好多问答的很模糊有不懂的再留言!

你可能感兴趣的:(职场,value,combobox,休闲)