ListView中的Foreach子项

时间:2011-09-16 13:58:17

标签: c# winforms listview

我希望能够遍历每个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);
    }
}

4 个答案:

答案 0 :(得分:4)

检查此代码:

  foreach (ListViewItem itemRow in this.loggerlistView.Items)
  {            
    for (int i = 0; i < itemRow.SubItems.Count; i++)
    {
        yield return itemRow.SubItems[i]);
    }
  }

同时检查msdn

希望我的回答可以帮到你。

答案 1 :(得分:4)

经过大量的反复试验后,我设法使用此代码:

for (int i = 0; i < listView1.Items.Count; i++)
{
    int ii = 1;
    MessageBox.Show(listView1.Items[i].SubItems[ii].Text);
    ii++;
}

答案 2 :(得分:0)

试试这个代码......非常简单。

for(int i=0;i<listView.Items.Count;i++)
listView.Items[i].Subitems[1].tostring();

答案 3 :(得分:0)

我想您想从第一个选定的项目中获取子项的值。试试这个:

   foreach (ListViewItem.ListViewSubItem a in listView1.SelectedItems[0].SubItems)
       MessageBox.Show(a.Text ); 

如果你想从整个列表视图或多选中获取值,那么你必须使用2个foreach循环。