我试图计算与“已保留”匹配的ListView中的项目数。我有以下代码,但计数不正确。

public void update_seat(ListView lstv1, Label lbl1, Label lbl2)
{
   foreach (ListViewItem liv in lstv1.Items)
   {
      if (liv.SubItems[1].Text == "Reserved")
      {
         liv.Selected = true;

         int y = lstv1.SelectedItems.Count;
         lbl1.Text = y.ToString();

      }
   }
}


我究竟做错了什么?

最佳答案

从下图可以看到,下面的代码计算指定列中的出现次数。您只需要在SubItems[int]部分中调整整数。

public void update_seat(ListView lstv1, Label lbl1, Label lbl2)
{
    int count = 0;

    foreach (ListViewItem item in lstv1.Items)
    {
            if (item.SubItems[0].Text == "Reserved")
                count++;
    }
}

10-06 13:28