【问题标题】:How can i get value from 3rd column of listview如何从列表视图的第三列中获取价值
【发布时间】:2014-06-01 13:24:56
【问题描述】:

如何从 C# 中列表视图的第三列获取值。我从列表视图的第 1 列和第 2 列获取值,但是当我尝试从第 3 列获取值时,它给了我错误。没有找到索引。我在列表视图中创建了 3 列。

我的代码如下。

string std_name = listView1.Items[count].SubItems[1].Text;
int rollNumber = int.Parse(listView1.Items[count].SubItems[0].Text);
string marks = listView1.Items[count].SubItems[2].Text;  // error is takeplace in this line.

【问题讨论】:

  • 使用调试器(在 Visual Studio 中按 F5)并找出有多少个 ItemsSubItems,这样您就可以看到哪里出了问题。
  • 您还没有在您添加子项的位置发布该代码...可能是问题存在..如果该项目中未添加第三个子项,则无法找到它并给出错误。 .. 甚至你已经创建了 3 列。
  • 这是winform应用程序吗?

标签: c#


【解决方案1】:

创建 3 列不会填充所有列中的值,

首先检查一个特定的 ListViewItem (Row) 是否有至少 3 个子项,你可以这样做

var colCount = listView1.Items[item_index].SubItems.Count;

如果值为<= 2,则您尚未在列中添加3rd 值。


回复你的评论

if (listView1.Items[item_index].Count == 2)
(
    listView1.Items[item_index].SubItems.Add("DEFAULT_VALUE_OF_THIRD_ITEM");
)

【讨论】:

  • 它返回我 2. 我如何添加第三列?
  • @user3696811 - 已回答!
  • 我如何从这个专栏中获得价值?
  • 我的问题已经解决了,我想从这个专栏中获得价值。请告诉我如何获得?
  • @user3696811 - string marks = listView1.Items[item_index].SubItems[2].Text;
猜你喜欢
  • 2014-03-02
  • 1970-01-01
  • 2018-02-12
  • 1970-01-01
  • 2022-08-17
  • 2011-06-25
  • 2023-03-07
  • 2020-08-11
  • 2016-03-11
相关资源
最近更新 更多