【问题标题】:C# Windows Forms how to get the ListView ItemsC# Windows 窗体如何获取 ListView 项
【发布时间】:2020-01-14 14:26:28
【问题描述】:

我正在尝试使用 C#(Windows 窗体)中的 ListView 中的项目创建一个字符串。我的 ListView 中有两列和数百个三位数。这些值指示我的鼠标在哪个 X 和 Y 轴上。但是一旦我尝试输出值,例如一个文本框,只显示最后的 X 和 Y 值,其余的被忽略。 我尝试过的:

listView1.Items[a].SubItems[0].Text
int.Parse(listView1.Items[a].SubItems[0].Text)

也许有人有建议

【问题讨论】:

  • a 中有什么内容?
  • 你肯定需要一个循环来遍历所有个列表视图项。我们只能猜测出于某种原因a 指向最后一个元素。
  • 所以原则上为一列插入一个循环而不是“a”?

标签: c# winforms listview


【解决方案1】:

您的项目是否使用循环?目前尚不清楚a 的来源。您可能还想为您的子项使用循环。 您可以像这样遍历所有项目和子项目:

for (int i = 0; i < listView1.Items.Count; i++)
{
    for (int k = 0; k < listView1.Items[i].SubItems.Count; k++)
    {
        string s = listView1.Items[i].SubItems[k].Text;
    }
}

【讨论】:

    【解决方案2】:

    您需要以这种方式迭代项目和子项目:

    foreach (ListViewItem item in listView1.Items)
    {
        Debug.WriteLine($"Item: {item.Text}");
    
        foreach (ListViewItem.ListViewSubItem subitem in item.SubItems)
        {
            Debug.WriteLine($"\tSubitem:{subitem.Text}");
        }
    }
    

    【讨论】:

      【解决方案3】:

      感谢你们的帮助, 唯一缺少的是循环和这一行Value += Environment.NewLine +

      你的建议都奏效了

                  foreach (ListViewItem item in listView1.Items)
                  {
                      Value += Environment.NewLine + item.Text;
      
                      foreach (ListViewItem.ListViewSubItem subitem in item.SubItems)
                      {
                          Value += Environment.NewLine + subitem.Text;
                      }
                  }
      

                  for (int i = 0; i < listView1.Items.Count; i++)
                  {
                      for (int k = 0; k < listView1.Items[i].SubItems.Count; k++)
                      {
                          Value += Environment.NewLine + listView1.Items[i].SubItems[k].Text;
                      }
                  }
      
      
      

      【讨论】:

        猜你喜欢
        • 2021-03-03
        • 2020-08-12
        • 1970-01-01
        • 2017-01-18
        • 1970-01-01
        • 1970-01-01
        • 2011-04-23
        • 1970-01-01
        • 2011-02-19
        相关资源
        最近更新 更多