查看列表视图中的每个子项
本文关键字:列表 视图 | 更新日期: 2023-09-27 18:08:53
我希望能够遍历每个ListViews子项并从中获取值。我尝试过各种各样的事情,但我发现很难从第二列得到子项文本,而不是从第一列得到项目文本。谢谢。
foreach (ListViewItem itemRow in listView1.Items)
{
for (int i = 0; i < itemRow.SubItems.Count; i++)
{
string dueDate = itemRow.SubItems[i].Text;
MessageBox.Show(dueDate);
}
}
经过大量的尝试和错误之后,我设法用下面的代码做到了:
for (int i = 0; i < listView1.Items.Count; i++)
{
int ii = 1;
MessageBox.Show(listView1.Items[i].SubItems[ii].Text);
ii++;
}
检查此代码:
foreach (ListViewItem itemRow in this.loggerlistView.Items)
{
for (int i = 0; i < itemRow.SubItems.Count; i++)
{
yield return itemRow.SubItems[i]);
}
}
也检查msdn
希望我的回答对你有帮助
我假设您想从第一个选中的项中获取子项的值。试试这个:
foreach (ListViewItem.ListViewSubItem a in listView1.SelectedItems[0].SubItems)
MessageBox.Show(a.Text );
如果你想从整个listview或multiselection中获取值,那么你必须使用2 foreach循环。
就这样做:
for (int i = 0; i < usedDatesList.Items.Count; i++)
{
for (int j = 0; j < usedDatesList.Items[i].SubItems.Count; j++)
{
MessageBox.Show(usedDatesList.Items[i].SubItems[j].Text);
}
}
试试这段代码,它很容易工作:
for(int i = 0; i < listView.Items.Count; i++)
listView.Items[i].Subitems[1].tostring();