是不是系统原有的是一起,不能分开的?
lstNCodeBar.Items.Add("aa")
是不是表示这项的文本是aa,值value也是aa?
谢谢。

解决方案 »

  1.   

    系统会去找 ListBox.ValueMember ListBox.DisplayMember 两个的值,如果在你添加的 item 的类型里找到同名的属性,就指定 item 属性的值,如果找不到就是 item 本身的值了
      

  2.   

    默认是,可以这样分开
          ListItem item = new ListItem();
          item.Text = "a";
          item.Value = "b";
          ListBox1.Items.Add(item);
      

  3.   

            public class CodeBar
            {
                private string InventoryId;
                private string Type;
                //USState类设定属性访问存储器
                public CodeBar(string key, string value)
                {
                    this.Type = key;
                    this.InventoryId = value;
                }
                public string key
                {
                    get
                    {
                        return Type;
                    }
                }            public string value
                {
                    get
                    {
                        return InventoryId;
                    }
                }            public override string ToString()
                {
                    return this.InventoryId;
                }        }                            ArrayList myCodeBars = new ArrayList();
                                foreach (DataRow drcCodebar in dsResult.Tables["aws_t_Archive_Inventory"].Rows)
                                {
                                    myCodeBars.Add(new CodeBar(drcCodebar["Inventory_ID"].ToString().Substring(drcCodebar["Inventory_ID"].ToString().Length - 8, 4) + "-" + drcCodebar["cType"].ToString(), drcCodebar["Inventory_ID"].ToString()));
                                }                            lstOCodeBar.DataSource = myCodeBars;
                                lstOCodeBar.DisplayMember = "key";
                                lstOCodeBar.ValueMember = "value";同事提供的代码解决了。