combox如何添加带Value和Text的item(类似webform中的listitem)

初学winform的时候,一直以为winform中的combox只能添加简单的仅有text的item,而不象aspx中的listitem那样即有text,又有value,结果很快发现自己错了,以下是一个示例:

先声明一个类

    public class ClsItemObject
    {
        public string ClassName = "", ClassId = "";

        public ClsItemObject(string _clsName, string _clsId)
        {
            ClassName = _clsName;
            ClassId = _clsId;
        }

        public override string ToString()
        {
            return ClassName;
        }
    }

 

利用这个类,我们可以直接在combox中添加复杂类型的item

ClsItemObject[] co = new ClsItemObject[3];
            co[0] = new ClsItemObject("精美礼品", "001");
            co[1] = new ClsItemObject("--手工礼品", "002");
            co[2] = new ClsItemObject("家用电器", "333");
            comboBox1.Items.AddRange(co);
            comboBox1.SelectedIndex = 1;

取值时,要记得用强制类型转换,转换成正确的类型

 ClsItemObject coSelected = (ClsItemObject)comboBox1.SelectedItem;
            MessageBox.Show(coSelected.ClassId);

posted @ 2012-12-13 12:49  麦田HH  阅读(205)  评论(0编辑  收藏  举报