displaymember与valuemember如何使用?
我有一个二维数组:(Name,ID)。
在进入一个子窗口时,我希望能向一个combo box的items中添加Name字段;用户选择了某个Name,退出窗口时,我希望能够采用很简便的方法直接得到对应的ID,最好不要使用循环进行匹配。请问是否可以使用combo box的displaymember与valuemember属性?最好能给处简单实例。
Thanks a lot.
问题点数:50、回复次数:2Top
1 楼brightheroes(在地狱中仰望天堂)回复于 2003-08-01 17:36:09 得分 50
public class aa
{
public string name;
public int id;
........
public override string ToString()
{ return name;}
}
aa b = new aa();
combobox.add(b);
(aa)b.id就是你要的东东。
Top
2 楼hawker1997(小草)回复于 2003-08-02 10:55:06 得分 0
多谢--brightheroes(SB程序员的悲惨人生)!
按照你的方法,我做了个实例!在这个实例中,我们应该注意到,
cbTest.Items.Add(b)是添加一个对bb的引用,并没有重新分配内存空间。
另外,在最后给分之前,我想问一问,public override string ToString()
{ return name;}的原理是什么?为什么它可以在combobox中只显示name。
private void button1_Click(object sender, System.EventArgs e)
{
aa b;
b = new aa();
b.name = "Hello";
b.id = 1;
cbTest.Items.Add(b);
b = new aa();
b.name = "Morning";
b.id = 2;
cbTest.Items.Add(b);
}
private void button2_Click(object sender, System.EventArgs e)
{
Object selectedItem = cbTest.SelectedItem;
lTest.Text = ((aa)selectedItem).id.ToString();
}Top



