包含相同内容的多列的列表框

时间:2015-10-12 13:46:48

标签: c# .net winforms

是否可以使用WinForms在ListBox控件中创建多个列?列应该有一个DataSource。例如:

1    5
2    6
3    7
4    8

我想将int列表分配给ListBox,但我希望有多列。 我的意思是,我想要一个包装的专栏。我希望我解释得很好......

2 个答案:

答案 0 :(得分:2)

我建议使用DataGridView代替ListBox来显示多个列。我给你举个例子。

使用DataTable作为DataSource

DataTable dt = new DataTable();
dt.Columns.Add("Column1");
dt.Columns.Add("Column2");

dt.Rows.Add("1", "5");
dt.Rows.Add("2", "6");
dt.Rows.Add("3", "7");
dt.Rows.Add("4", "8");

dataGridView1.DataSource = dt;

将通用列表用作DataSource

List<YourClass> list = new List<YourClass>();

YourClass yc = new YourClass();
yc.Column1 = "1";
yc.Column2 = "5";

list.Add(yc);
dataGridView1.DataSource = list;

public class YourClass
{
    public string Column1 { get; set; }
    public string Column2 { get; set; }
}

答案 1 :(得分:1)

当然,它是一个内置功能,您只需启用设计器即可。将MultiColumns属性设置为True,将ColumWidth属性设置为大于0的值。总之,当内容不适合框时,水平滚动条会自动出现。