winform listbox 没有listitem的问题

在winform编程中,listbox 只有一个 list.items.Add(object obj)的方法。

又是需要这样 list.items.Add(value,text)这样的东西。

其实这样的需求是可以实现的,只不过 list提供了一个更加灵活的方法而已。

我们可以自定义这样一个类

代码
public   class  ListItem
    {
        
private   string  id  =   string .Empty;
        
private   string  name  =   string .Empty;
        
public  ListItem( string  sid,  string  sname)
        {
            id 
=  sid;
            name 
=  sname;
        }

        
public   override   string  ToString()
        {
            
return   this .name;
        }
        
public   string  ID
        {
            
get
            {
                
return   this .id;
            }
            
set
            {
                
this .id  =  value;
            }
        }
        
public   string  Name
        {
            
get
            {
                
return   this .name;
            }
            
set
            {
                
this .name  =  value;
            }
        }
    }

 

 

使用方法

ListItem item=new ListItem(orgcode,orgname);
listbox.Items.Add(item);

listbox.DisplayMember = "Name";
listbox.ValueMember = "ID";

 

取值方法

ListItem item = box.SelectedItem as ListItem;
 string name = item.Name;
string id = item.ID;

 

你可能感兴趣的:(WinForm)