在您的情况下,使用ListView 比使用ListBox 更好。下面是一个示例,在 ListView 的不同列中显示字符串中的所有单词:
确保将以下属性设置为您的 ListView(此处名称为 ColumnsListView):
ColumnsListView.View = View.Details;
这个方法接受一个字符串,用空格分割它并为每个值添加一列:
private void SetListView(string input)
{
var values = input.Split(' ');
ColumnsListView.Columns.Add("Column1");
var item = new ListViewItem(values[0]);
for (var i = 1; i < values.Length; i++)
{
ColumnsListView.Columns.Add("Column" + (i+1));
item.SubItems.Add(new ListViewItem.ListViewSubItem { Text = values[i] });
}
ColumnsListView.Items.Add(item);
}
当使用 LinQ 的 Skip() 方法添加带有子项的项目时,可以采用不同的方式:
private void SetListView(string input)
{
var values = input.Split(' ');
for (var i = 0; i < values.Length; i++)
ColumnsListView.Columns.Add("Column" + (i + 1));
var item = new ListViewItem(values[0]);
item.SubItems.AddRange(values.Skip(1).ToArray());
ColumnsListView.Items.Add(item);
}
更新:
如果您想使用DataGridView,这是一个示例:
private void SetDataGridView(string input)
{
var values = input.Split(' ');
for (var i = 0; i < values.Length; i++)
ColumnsDataGridView.Columns.Add("Column" + (i + 1), "Column" + (i + 1));
ColumnsDataGridView.Rows.Add(values);
}