如何在使用DataSource时将下一列添加到ListBox?

时间:2010-06-03 14:28:41

标签: c# .net

假设我有ListBox名为animalList。作为DataSource,我使用以下类:

class Animal
{
    private int id;
    private string name;
    private string description;

    public Animal(int id, string name, string description)
    {
        // implementation
    }

    public int Id
    {
        // implementation
    }

    public string Name
    {
        // implementation
    }

    public string Description
    {
        // implementation
    }
}

我想在ListBox中有两列:名称和说明。有可能这样做吗? 我设法添加了一个这样的列:

List<Animal> animals = // LINQ sucking data from XML

animalList.MultiColumn = true;
animalList.DataSource = animals;
animalList.DisplayMember = "Name";
animalList.ValueMember = "Id";

但我无法弄清楚如何实际实现下一栏。

1 个答案:

答案 0 :(得分:1)

MultiColumn属性的名称可能会有些误导。 ListBox控件不支持您要查找的列类型。

MultiColumn实际上做的是将“溢出”项目放入新列而不是显示垂直滚动条。

http://msdn.microsoft.com/en-us/library/system.windows.forms.listbox.multicolumn.aspx