我试图将列表视图中的所有项目都放入一个字符串中,如下所示:
foreach(ListViewItem item in ListView1.Items)
{
thisstring += item...?
}
item.Text 不是 item 的属性...似乎可以解决这个问题。有什么建议么?
您可以使用 LINQ 选择所有项目Text
。
var allItems = ListView1.Items.Cast<ListItem>().Select(i => i.Text);
var allItemText = String.Join(",", allItems);
请注意,您需要添加System.LINQ
命名空间。
编辑:我读过ListBox
, ListView 没有 Text 属性,我不确定你真正想要连接什么文本。
foreach(ListViewItem item in ListView1.Items)
{
thisstring += item.Text+",";
}
thisstring.TrimEnd(',');
是不是很简单。
StringBuilder sb = new StringBuilder();
foreach(ListViewItem item in ListView1.Items)
{
sb.Append(item.Text);
sb.Append(',');
}
Console.WriteLine(sb.ToString().TrimEnd(','));
编辑:正如 Tim 和 Guest 所说,在 ASP.Net 中没有 ListViewItem 的 Text 属性,Windows Forms 具有 ListViewItem并且它具有 text 属性。ASP.Net ListView没有 Text 属性
string.Join(" ", ListView1.Items.Cast<ListItem>().Select(i => i.Text).ToArray());